目录
QByteArray 是一个Qt框架中的类,它是一个可变长的字节数组,可以用于存储任意类型的数据,包括二进制数据和文本数据。
QByteArray 的使用方法如下:
1. 创建 QByteArray 对象
可以通过以下方式创建 QByteArray 对象:
// c++
QByteArray byteArray; // 空的字节数组
QByteArray byteArray1("Hello world"); // 初始化为字符串
QByteArray byteArray2 = "Hello world"; // 等同于上面的初始化方式
QByteArray byteArray3(10, '\0'); // 创建一个长度为10的空字节数组
2. 访问 QByteArray 中的数据
可以通过以下方式访问 QByteArray 中的数据:
//c++
char *data = byteArray.data(); // 获取字节数组的指针
int size = byteArray.size(); // 获取字节数组的长度
char byte = byteArray.at(0); // 获取字节数组中指定位置的字节
3. 修改 QByteArray 中的数据
可以通过以下方式修改 QByteArray 中的数据:
//c++
byteArray.append('!'); // 在字节数组末尾添加一个字节
byteArray.prepend('H'); // 在字节数组开头添加一个字节
byteArray.replace(6, 5, "you"); // 用指定的字节数组替换字节数组中指定位置的字节
byteArray.resize(15); // 改变字节数组的长度
byteArray.clear(); // 清空字节数组
4. 将 QByteArray 转换为 QString
可以通过以下方式将 QByteArray 转换为 QString:
//c++
QString str = QString::fromUtf8(byteArray); // 将字节数组转换为UTF-8编码的字符串
5. 将 QString 转换为 QByteArray
可以通过以下方式将 QString 转换为 QByteArray:
//c++
QByteArray byteArray = str.toUtf8(); // 将字符串转换为UTF-8编码的字节数组