我的机器安装的是Debian etch
机器上的Qt4版本是4.2.1-2+etch1
如下代码:
- QTextCodec* codec = QTextCodec::codecForName("GBK");
- QString strTemp = codec->toUnicode("中文"); //源代码编码是GB2312
运行崩溃,后来发现是codec是NULL
写了如下测试代码:
- QList<QByteArray>::iterator it;
- QList<QByteArray> listCodecs = QTextCodec::availableCodecs();
- for (it = listCodecs.begin(); it != listCodecs.end(); it++)
- {
- qDebug() << (*it) ;
- }
结果发现确实没有GBK的textcodec,不仅没有GBK,
其他中文都没有
而QT的帮助说是支持的。
而如果自己下载的QT源代码包编译、安装以后,运行上面的测试代码就可以找到中文的codec。
请问各位高手,这个问题怎么解决。