当切换系统地区时,数字出现乱码。
![切换成中文香港测试](https://i-blog.csdnimg.cn/blog_migrate/7d1923ecb56bbc40bc81dcd38058f70e.png)
![可以看到标准数字换成了既不是中文也不是英文的数字。](https://i-blog.csdnimg.cn/blog_migrate/7b4644cbede724f696d245fdafb40c2a.png)
这时候运行Qt使用QLocal适配不同地区语言格式数字转换的字符串
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a7cf11b25da2a9f155f24b576d615946.png)
![qDebug()输出结果](https://i-blog.csdnimg.cn/blog_migrate/073b547592b4c95294bd9f04cb830852.png)
结论
使用QLocale类适配不同语言和地区的数字格式会出现乱码问题,在标准数字类型不是常规数字类型时会出现乱码,
解决放法1:将地区更改,或者影响乱码的数据格式更改常规格式。
解决放法2:使用Qstring::number或者QString(%1).arg(0)方式数字转成字符串显示,这样会不受系统格式影响,无法适配其他地区。
使用QLocale类完美适配不同地区的数字格式还没有解决,希望有经验的大佬能在下方指点一二。