首页 » 问答 » 嵌入式系统 » 操作系统 » QT中,ini文件中的键值有英文逗号时,读取不出内容,这种情况是为什么?

QT中,ini文件中的键值有英文逗号时,读取不出内容,这种情况是为什么?

菜鸟
2018-06-08 10:41:54     悬赏10分

源代码读取ini格式文件:

const QString A= file_name;

QSettings *actionCodeIni = new QSettings(A, QSettings::IniFormat);

actionCodeIni->setIniCodec(QTextCodec::codecForName("UTF-8"));

actionCodeIni->beginGroup("B");

tempKeyStr = actionCodeIni->value(QString::number(key)).toString();

actionCodeIni->endGroup();

经过上述代码调用,读取ini文件中key的键值是,如果key的键值内容包含了英文的逗号“,”时,

读取的tempKeyStr内容为空。

(1)修改为中文的逗号“,”时,可以正常读出内容;

(2)修改QTextCodec::codecForName("UTF-8")格式时,读出的内容为空

(3)屏蔽QTextCodec::codecForName("UTF-8")时,读出的内容为空

求助,这是什么情况?什么原因????


关键词: QT, ini文件  

回复

匿名不能发帖!请先 [ 登陆 注册 ]