QSettings 缓存坑

  • Post author:
  • Post category:其他


使用QSettings 单独读写文件,显示一切正常。实例代码如下:

但是如果在这段代码之前,你打开过这个ini 文件,并且并没有设置

setting.setIniCodec(“UTF-8”);

那么中文存在时,你会获取一段乱码。

示例如下:

这个现象产生的原因是,QSettings 的缓存机制,只要某个文件打开,就会存储在内存中,如果该文件再次打开时,直接从内存中读取,设置的编码格式无效。



版权声明:本文为WJK19891106原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。