[Qt-interest] messy code chinese
Chen, Zhenqiang
zhenqiang.chen at intel.com
Fri Apr 15 05:01:47 CEST 2011
I had similar issues before. I solved it with
(1) For const Chinese string, use QObject::trUtf8("提示").
(2) Make sure QTextCodec::setCodec... is executed before the reference of Chinese string. i.e. your code should be in the following execution order.
#if defined(Q_OS_LINUX)
QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());
QTextCodec::setCodecForCStrings(QTextCodec::codecForCStrings());
QTextCodec::setCodecForTr(QTextCodec::codecForTr());
#endif
...
// set header list
QStringList headerList;
headerList << "flow" << "提示" << "index"
________________________________
From: qt-interest-bounces+zhenqiang.chen=intel.com at qt.nokia.com [mailto:qt-interest-bounces+zhenqiang.chen=intel.com at qt.nokia.com] On Behalf Of pengliang(彭亮)
Sent: 2011年4月15日 9:11
To: qt-interest at qt.nokia.com
Subject: [Qt-interest] messy code chinese
Hi All
I had tried GBK,System,GB2312,UTF8 of QTextCodec, but Chinese still unreadable on other computers, it is perfect on my computer.
Anybody can tell me why?
// set header list
QStringList headerList;
headerList << "flow" << "提示" << "index" <
[cid:788495402 at 15042011-2EC1]
// set code
#if defined(Q_OS_LINUX)
QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());
QTextCodec::setCodecForCStrings(QTextCodec::codecForCStrings());
QTextCodec::setCodecForTr(QTextCodec::codecForTr());
#endif
#if defined(Q_OS_WIN)
/*
QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("System"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("System"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("System"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
*/
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF8"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF8"));
#endif
Thanks
彭亮Ken
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20110415/b22b6216/attachment.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image002.jpg
Type: image/jpeg
Size: 6888 bytes
Desc: image002.jpg
Url : http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20110415/b22b6216/attachment.jpg
More information about the Qt-interest-old
mailing list