m_pSetting->beginGroup(“CHANNEL”);
QStringList mchannle = m_pSetting->childKeys();
// 读取一个组键值,其中key值有中文乱码。
for(int i=0; i<mchannle.size(); i++)
{
Id.append(m_pSetting->value(mchannle.at(i)).toString()); //通过乱码的key读取value值(转换的key是否可以识别未测试)。
QByteArray ch = mchannle.at(i).toLatin1(); //调试器里方便查看如何存储,并无实际意义。
channle.append(mchannle.at(i).toLatin1());//将Key经过转换后无乱码。(具体原因未知,猜测与Qchar的实现和QSettings读取键值的编码有关。)
}
m_pSetting->endGroup();
注:这种方式是否能解决QT中的其他中文乱码待测试
qt QSettings 读入键值(key)为中文乱码。
最新推荐文章于 2024-07-06 11:19:55 发布