• 6612阅读
  • 8回复

[讨论]在使用QSettings写入 [ 符号时出现乱码 [复制链接]

上一主题 下一主题
离线nuanbing222
 

只看楼主 正序阅读 楼主  发表于: 2014-05-27
如题,在使用了QSettings类进行ini文件的读写时,由于键名中存在 [ 字符,结果读取的时候不会有问题,但是写入的话,就变成了%5B的乱码。怎么解决?
离线自强不吸

只看该作者 8楼 发表于: 2014-05-28
Linux下就得用转义符了
自强不吸!
离线dbzhang800

只看该作者 7楼 发表于: 2014-05-28
特殊要求的话,
QSettings::registerFormat()

来注册自己的读写函数进行了,写起来也不麻烦
离线nuanbing222

只看该作者 6楼 发表于: 2014-05-28
回 ashe0817 的帖子
ashe0817:转义符呀,没影响的。或者你把ini文件改为utf-8再试试,应该就是正常的啦[表情]  (2014-05-27 17:29) 

谢谢您的回答,但是我不希望出现这样的转义字符,毕竟这样给人的感觉不好,也影响了与其他程序的兼容性,能否直接显示为 [ ? 我试过了将ini文件格式改为UTF-8,也试过了在写入时设置
QSettings的setIniCodec为“UFT-8”,好像都不行,有没有其他方法??????
离线nuanbing222

只看该作者 5楼 发表于: 2014-05-28
谢谢各位的回答,但是我不希望出现这样的转义字符,毕竟这样给人的感觉不好,也影响了与其他程序的兼容性,能否直接显示为 [ ? 我试过了将ini文件格式改为UTF-8,也试过了在写入时设置
QSettings的setIniCodec为“UFT-8”,好像都不行,有没有其他方法??????
离线roywillow

只看该作者 4楼 发表于: 2014-05-27
转义了而已
你可以想象一下,如果直接以“[”写入ini了,那么你怎么确定这个“[”是键名,而不是组名(好像不是叫这个)?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线ashe0817

只看该作者 3楼 发表于: 2014-05-27
转义符呀,没影响的。或者你把ini文件改为utf-8再试试,应该就是正常的啦
离线dbzhang800

只看该作者 2楼 发表于: 2014-05-27
这不叫乱码,这算是转义字符
离线nuanbing222

只看该作者 1楼 发表于: 2014-05-27
没有人知道吗?求各位大神。。。。。
快速回复
限100 字节
 
上一个 下一个