使用拖拽事件的时候发现,在txt中,文本为英文时,不会乱码,但文本为中文的情况下中文部分会显示乱码
尝试在文本流中添加了setAutoDetectUnicode,仍不能解决乱码问题
QTextStream in(&file);
in.setAutoDetectUnicode(true);
最终:在main函数中首行添加代码解决
QTextCodec *codec=QTextCodec::codecForName("UTF-8");
QTextCodec::setCodecForLocale(codec);
问题:
Qt使用VS2017生成的DLL文件时,VS2017代码中使用的中文string在Qt中乱码?
解决方案:
如果在显示的时候出现问题,可以尝试转换为
QString::fromLocal8Bit(const QByteArray &str)
,
使用QByteArray 的data读取即可显示正常