上文可能是我没说清楚,直接贴代码。。。

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
QString str="倚天屠龙";
QString setup="我的配置";
QString fileName="配置.ini";
QSettings *myIni=new QSettings (fileName,QSettings::IniFormat);
myIni->beginGroup(setup);
myIni->setValue("name",str);
myIni->endGroup();
delete myIni;
myIni=new QSettings(fileName,QSettings::IniFormat);
myIni->beginGroup(setup);
QString resault=myIni->value("name").toString();
myIni->endGroup();
delete myIni;
qDebug()<<resault;
return a.exec();
}

配置.ini中的内容:我用记事本打开(NotePad++,word...都一样)

[%U6211%U7684%U914D%U7F6E]
name=\x501a\x5929\x5c60\x9f99

控制台输出:

“倚天屠龙”

我想要的是在配置.ini中有以下内容:
[我的配置]
name=倚天屠龙


怎么能控制让QSettings输出(向文件中写)什么内容呢(以某种编码)?疑惑中。。。。

posted on 2007-10-26 23:48 清源游民 阅读(4098) 评论(6)  编辑 收藏 引用 所属分类: Qt

FeedBack:
# re: 还是关QSettings的,把我的问题重复一下
2007-10-27 16:53 | Icat
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());

你这句已经设置编码了...就是设置成当前系统locale 的编码..
如果你要换,可以试试看 codeForName("gbk") 等等...

手头没有qt4, qt3的qsetting很不一样 ,用qfile 作了测试,
kde 下en_GB.UTF-8的locale, 写入和读取没问题

如果你那边还是不行,可以看看qsetting写文件的那段代码
  回复  更多评论
  
# re: 还是关QSettings的,把我的问题重复一下[未登录]
2007-10-27 18:18 | exile
QSettings有它自己的序列化机制,要控制它的编码方式,最好还是用自己的INI配置类吧。  回复  更多评论
  
# re: 还是关QSettings的,把我的问题重复一下
2007-10-28 17:38 | 清源游民
谢谢大家的帮助,我又试了好多次,又大概看了下QSettings的代码,发现正如eXile所说,很难控制。于是只好写了个简陋的自己的ini处理类,暂时把问题解决了。使用了QtextStream类,并setCodec("UTF-8");稍后把代码整理一下放出,供大家参考,讨论。再次感谢帮助我的朋友们。  回复  更多评论
  
# re: 还是关QSettings的,把我的问题重复一下
2007-10-28 19:31 | 清源游民
其实不用把QtextStream设为UTF-8,使用默认的就好,默认的情况下使用
QTextCode::codeForLocale(),这样使用一切也OK.呵呵。  回复  更多评论
  
# re: 还是关QSettings的,把我的问题重复一下
2008-08-18 15:47 | apple
不错不错, 大家相互讨论才:很好,很强大~~
  回复  更多评论
  
# re: 还是关QSettings的,把我的问题重复一下
2009-07-28 15:22 | 雪狼
用tr("中文")即可。或者用trUtf8("中文"),并且把源文件存为UTF8,推荐使用后者。  回复  更多评论
  

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2007年4月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

留言簿(35)

随笔分类(78)

随笔档案(74)

文章档案(5)

搜索

  •  

最新评论

阅读排行榜

评论排行榜