【QT】QFile读取.txt文本文件时,中文乱码问题(已解决)

目录

0.背景

1.修改方法


0.背景

项目读取一个【.txt】文本文件,显示到下拉框中,其中含有中文,在读取中文相关字段时会出现乱码,代码和显示如下

.txt文本内容如下(显示到下拉框时,我做了分割处理):

实际读取的是【中文test1】

【QT】QFile读取.txt文本文件时,中文乱码问题(已解决)_第1张图片

    QFile file(filePath);
    if (!file.open(QIODevice::ReadOnly| QIODevice::Text)) {
        return false;
    }
    QString content = file.readAll();
    file.close();

修改前:

修改后:

1.修改方法

GBK格式去读,代码如下

    QFile file(filePath);
    if (!file.open(QIODevice::ReadOnly| QIODevice::Text)) {
        return false;
    }
    QTextStream in(&file);
    in.setCodec("GBK"); // 设置文件的编码格式为GBK
    QString content = in.readLine(); 
    file.close();

修改后即可显示正确的中文内容至界面

--END--

你可能感兴趣的:(Qt,qt,c++,QFile)