【C#】部分国家/语言,string字符串转decimal、float时,小数点解析异常、小数点丢失、小数点被忽略

现象:

部分国家地区,字符串转小数后,小数点丢失,比如:输入"12.34",输出1234,而非12.34。

部分相关函数decimal.Parse、decimal.TryParse、float.Parse、float.TryParse ···

原因:

看手机系统默认语言,中英文正常解析,印尼语则会出错,

因为不同国家的小数点写法不同,有 '.' 和 ',' 两种:

中文字符串"12.34",转成印尼小数时,因为小数点表示方式的区别,结果是1234;印尼小数"12,34"转成中文小数,也是1234。

解决:

读取手机系统默认语言,

方法1. 解析小数数值前替字符:string.Replace(',','.')

方法2. Android Java函数:DecimalFormat.applyPattern、DecimalFormat.setDecimalFormatSymbols,修改数值格式化符号

相关推荐
雪豹阿伟2 分钟前
4.C# —— 循环语句、break、continue
c#·上位机
两千次3 分钟前
webpost
c#
思麟呀30 分钟前
在C++基础上理解Csharp-2
开发语言·jvm·c++·c#
吴可可1233 小时前
用Bulge保持多段线圆弧连续性
算法·c#
qq_4312807016 小时前
上位与基恩士PLC通讯工作记录
c#
weixin_4280053019 小时前
C#调用 AI学习从0开始-第1阶段(基础与工具)-第2天Prompt工程基础
人工智能·学习·c#·prompt
咩图21 小时前
WPF-VisualStudio-C#-Fluent.Ribbon8.0.0学习
c#·wpf·visual studio
加号31 天前
【C#】WPF基于Halcon 的HWindowControlWPF 控件实现图像缩放、移动
开发语言·c#·wpf
雪豹阿伟1 天前
2.C# —— 结构体、类型转换与运算符
c#·上位机
njsgcs1 天前
c# solidworks GetPartBox无法获得正确实体边界框原因
开发语言·c#·solidworks