sting 转换为 QByteArray
时间: 2024-09-13 14:16:32 浏览: 51
Java中数组与集合的相互转换实现解析
5星 · 资源好评率100%
在C++中,当你需要将`std::string`转换为`QByteArray`时,你可以使用`QByteArray`的构造函数,该构造函数接受一个`const char*`类型的参数。由于`std::string`通常包含以null结尾的字符数组,因此可以直接使用`std::string`的`c_str()`方法来获取这个const char*指针。这里是如何进行转换的示例代码:
```cpp
#include <QByteArray>
#include <string>
std::string str = "Hello, World!";
QByteArray byteArray(str.c_str());
```
在这段代码中,`str.c_str()`会返回一个指向`std::string`内部字符数组的const char*指针,然后这个指针被传递给`QByteArray`的构造函数来创建一个新的`QByteArray`实例,这个实例包含了与`std::string`相同的内容。
请注意,`c_str()`返回的字符串是以null结尾的,这与C语言中的字符串格式一致,所以`QByteArray`的构造函数能够正确地从这个指针中读取所有字符直到遇到null字符为止。
阅读全文