分析双精度字符串不考虑当前区域性
Parse a double string does not consider the current culture
在javascript客户端,我发送一个十进制值:
"Latitude": 80.435435344
在服务器端,我收到一个字符串:
"80,435435344"
然后我尝试解析字符串:
valueResult.AttemptedValue = "80,435435344";
NumberFormatInfo dbNumberFormat = CultureInfo.CurrentCulture.NumberFormat;
actualValue = double.Parse(valueResult.AttemptedValue, dbNumberFormat);
我的文化是"de-DE",意思是它的
NumberFormatInfo.NumberDecimalSeparator
有一个","集
但是当字符串被解析为双精度时,它的表示形式是:
80.435435344
为什么我的逗号不见了?
您可以在调试器中看到这一点,因为Visual Studio的区域性与应用程序中的区域性不同,因此当您在调试器中看到点而不是逗号时,没有任何问题,因为应用程序以正确的方式处理它
此外,当您字符串化双精度时,您应该指定格式提供程序,它使用逗号而不是点
double a = 80.435435344;
string aString = a.ToString(CultureInfo.CurrentCulture.NumberFormat);
//or
string aString = a.ToString(CultureInfo.CreateSpecificCulture("de-DE").NumberFormat);
// Both solutions return 80,435435344
你会得到你的逗号。
相关文章:
- 使用Dnamics CRM 2011中的JavaScript读取子网格的所有记录,而不考虑活动页面
- 在BoilerplateJS浏览器加载所有脚本(在其他模块中),而不考虑激活的模块
- JS toLocaleString始终显示货币符号,而不考虑区域设置
- 在呈现网页时复制网页,而不考虑参考底图的来源
- 如何使用 javascript 获取 UTC 格式的日期,而不考虑当前系统日期
- 转换 JSON 日期,不考虑时区
- 使用XPath选择包含文本的节点,而不考虑CasperJS中的空白
- 使用简单的角度滤波器来替换输入字符串中某些字符串的所有出现,而不考虑大小写和空格
- 角度高图表和ng网格标题不考虑帧宽度
- jQuery/JavaScript代码如何将表导出为CSV文件而不考虑表's大小.看看@jsfiddle链接
- 捕获给定类型的所有事件,而不考虑气泡/目标
- 选项卡分组和选项卡着色:如何将此功能应用于从我的网页打开的选项卡,而不考虑浏览器
- CSS不透明度转换;在动画过程中不考虑覆盖不透明度
- 如何增加光滑块高度,而不考虑其内容
- 正则表达式不考虑 .在JavaScript中进行模式测试时
- $browser.notifyWhenNoOutoutstanding Requests不考虑控制器功能
- getAttribute('href') 始终返回“#”,而不考虑移动浏览器上的实际 href 属性
- Javascript 获取当前日期,而不考虑时区
- 如何找到日和月之间的天数差异,而不考虑年份
- 分析双精度字符串不考虑当前区域性