阅读背景:

UTF-8文件的Unicode签名BOM(Byte Order Mark)

来源:互联网 

最近碰到一个问题,自己编写的utf8格式的ini配置文件(包含中文的字符串),QSettings读不正确(而且我也调了setIniCodec("UTF-8")),经过我仔细的分析,我自己写了一个测试文件,将QSettings的编码格式设置为utf8然后写入,发现这个ini配置文件在notepad和utraedit中的字符是一样的,然后我通过utraedit的十六进制仔细对比了一下,发现了问题所在,原来直接使用qsettings读,qsettings不会考虑BOM的问题,而qsettings则直接读取,所以导致手写的utf8格式的ini配置文件读取不正确,这就是我们在编写ansii格式正确,但utf8格式不正确的原因所在啊。解决该问题的方法就是如果我们想手写utf8格式的ini配置文件我们直接保存为不带签名的即可。最近碰到一个问题,自己编写的utf8格式的ini配置文件(包含中文的字符串),QSettin




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: