转到qt下,主要是因为跟着导师做图形化界面,一下子就喜欢上了。最高兴的就是它的轻量级,做些小项目很爽。
所以,console的一些项目也打算移植到qt来。
不过,虽然说qt对c++有支持,但是似乎对中文的支持有点……或者说,并不是它支持不好,而是用c++的方法来做有点问题,它对中文的支持,绕开了c++。所以cout的使用就麻烦一些。
网上,很多关于中文的问题,相信大家也都在这里死磕过……昨晚,也花了很多时间去弄,终于是弄出来了,所以说说我的方法吧。
我想做的功能很简单,就是在控制台上显示一个本地文件的内容。可是使用cout,不管怎么设定编码,都是乱码。
之后,有个介绍说用qDebug可以……我试了试,发现还真的可以……但,真的就用这个吗?虽然在release版本中,这个函数也能用(简直名不符实!),但用这个东西来做文件输出,怎么都感觉很诡异。
后来又试了试,终究是没找到方法用cout来输出。而用了Qt自己的QTextStream完成了。
最后,上代码:
#include <QCoreApplication>
#include <iostream>
#include <QTextStream>
#include <QDebug>
#include <QFile>
using namespace std;
int main(int argc, char *argv[])