qt读取UTF-16LE
时间: 2023-11-01 08:07:58 浏览: 155
在 Qt 中读取 UTF-16LE 编码的文本可以使用 QTextCodec 类。具体步骤如下:
1. 打开文件并读取数据到 QByteArray 中:
```cpp
QFile file("filename.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
qDebug() << "Failed to open file";
return;
}
QByteArray data = file.readAll();
file.close();
```
2. 通过 QTextCodec::codecForName() 方法获取 UTF-16LE 编码对应的 QTextCodec 对象:
```cpp
QTextCodec *codec = QTextCodec::codecForName("UTF-16LE");
```
3. 将 QByteArray 转换成 QString:
```cpp
QString str = codec->toUnicode(data);
```
现在,你就可以使用 QString 对象中的文本数据进行处理了。
阅读全文