首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

关于QT5,MSVC2010等的编码有关问题

2013-02-24 
关于QT5,MSVC2010等的编码问题。我用的是QtCreator 2.61+MSVC2010。QT5的Qstring默认是UTF8格式,而且移除了s

关于QT5,MSVC2010等的编码问题。
我用的是QtCreator 2.61+MSVC2010。QT5的Qstring默认是UTF8格式,而且移除了setCodecForString这种类型的函数。那么怎么办呢。把源码用UTF8格式存储。这也是QT5极力推介的。但是MSVC只支持带BOM的UTF8格式,这个可以在QtCreator中设置,自动给UTF8带上BOM,问题是qmake不支持带BOM的UTF8格式。一个MSVC必须要带BOM的UTF8格式,一个qmake必须不要带BOM的UTF8格式。这是不是在玩我们啊。
逼我只能用GBK么。这样的话,用qt5,每次都要Qstring::fromLocal8bit("我是中国人");况且就算BOM问题解决了,源代码是UTF8了。MSVC的执行编码也是GBK,去掉setCodecForString请问有什么替代方案么?或者哪位有好的解决方法啊,或者我有什么遗漏的地方。
[解决办法]
1.这个编码的问题,本人也在探究之中,不过以前dbzhang在他的文章中:http://blog.csdn.net/dbzhang800/article/details/7540905#comments以及http://blog.csdn.net/dbzhang800/article/details/7542672http://有过一些讨论;
2.setCodecForString没有替代方案,其实QString::fromXXX能更好的说明代码作者对字符集的理解,这是个好习惯

热点排行