qt中读取的含中文的文件显示乱码

	QFile file("./test.txt");
	if(!file.open(QIODevice::ReadOnly))
	{
		 return;
	}
	QTextStream in(&file);
	//设置文件的编码格式,不知道可以用notepad++看看是什么格式的,默认的为系统的格式
	in.setCodec(QTextCodec::codecForName("UTF-8"));
	//此时读出已经是正确的,如果前面使用下面关于说的,qDebug打印会乱码,可以用textedit显示看看
	in.readLine();

关于

QTextCodec::setCodecForLocale(QTextCodec::codecForName(“UTF-8”));

win7中文系统默认为GBK,推荐直接在前面用这行代码,在需要的地方转换
可以使用

QTextCodec::codecForLocale()->name();

打印看看

猜你喜欢

转载自blog.csdn.net/yuxing55555/article/details/84767369
今日推荐