【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,修改数值格式化符号

相关推荐
唐宋元明清21881 小时前
.NET 音频采集
windows·c#·音视频
CN.LG3 小时前
浅谈C#之Winform
开发语言·c#
小飞鱼通达二开3 小时前
C# 调用接口处理返回json数据
c#·json
躺下睡觉~3 小时前
C# Dictionary
java·开发语言·c#
白白白白白kkk5 小时前
【VIsion Master】机器视觉软件二次开发(C#版本)学习笔记
笔记·学习·c#
管住自己~5 小时前
Proporties.Settings.setting报错与
单元测试·c#
魔术师Dix6 小时前
【Unity】移动端草海解决方案
学习·unity·c#
Eiceblue6 小时前
通过C# 读取PDF页面大小、方向、旋转角度
前端·pdf·c#
WineMonk8 小时前
WPF列表视图查询
c#·wpf
小白鼠零号9 小时前
记录|C# winform——Chart控件
c#·visual studio·winform