• 5346阅读
  • 3回复

[提问]qt通过socket发送中文的问题 [复制链接]

上一主题 下一主题
离线tsuibin
 

只看楼主 倒序阅读 楼主  发表于: 2010-01-15
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
我的客户端和服务器端 编码都是utf8的

操作系统也都是utf8字符集

并且在程序中也写了
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));


我在读取socket数据的时候使用
QTextCodec *codec = QTextCodec::codecForName("UTF-8");
    QByteArray qba;
    do {
            qba = this->readAll();
            responseLine += codec->toUnicode(qba);
    } while (this->canReadLine());

然后我将读到的字符串保存到 QSettings 文件中
tmpFile->setValue("log",responseLine);
    tmpFile->sync();

我将文件下载到本地,使用vi打开发现是许多?????????

不知该怎么解决?

离线xinqingfly

只看该作者 1楼 发表于: 2010-01-15
在写入文件前打印出来看看是不是乱码
菜鸟也是鸟
离线tsuibin

只看该作者 2楼 发表于: 2010-01-15
打印出来不是乱码
离线xinqingfly

只看该作者 3楼 发表于: 2010-01-15
调一下QSettings中的setIniCodec看看
菜鸟也是鸟
快速回复
限100 字节
 
上一个 下一个