我们的游戏准备发布到海外, 平时测试的时候都是基于中文和英文系统, 感觉运行都很正常. 最近发现当语言切换成 德语\西班牙语\俄语\法语等语种时, 会出现一些诡异的问题. 小兵们也不移动了. 这个问题卡了我好几天, 后来发现这些语言,都有一个共同的特点, 就是他们的小数点是用逗号表示(如: 1,2), 而我们的json配置文件都是用 小数点表示(对应: 1.2); 这样的表示法在有些语言的系统下会出错.
解决方法,只要为线程统一设置语言地区即可解决。
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en");
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en");