Qt UTF8 到 ANSI 覆盖和文件保存

Qt UTF8 to ANSI coverting and file saving

提问人:sangcheul 提问时间:10/4/2022 更新时间:10/4/2022 访问量:221

问:

这是测试代码..

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QByteArray fileBuffer("일이");

    QFile saveFile("test.txt");
    if (!saveFile.open(QIODevice::WriteOnly | QIODevice::Text))
        return a.exec();

    QTextStream stream(&saveFile);
    QTextCodec *codec = QTextCodec::codecForName("EUCKR");
    QByteArray encodedString = codec->fromUnicode(fileBuffer);
    stream << encodedString;
    stream.flush();
    saveFile.close();
    return a.exec();
}

我认为 test.txt 编码了 EUC-KR . 但是,当记事本(窗口应用程序)读取时,编码类型是 UTF-8,而不是 ANSI。

问题是什么??

我应该存储由 EUC KR 编码的十六进制代码的文本文件。

Qt 字符编码 UTF-16 ANSI

评论

0赞 vahancho 10/4/2022
难道不应该为using函数(Qt5)设置编解码器吗?QTextStreamsetCodec()

答: 暂无答案