将字符串转换为十进制存在区域设置/区域性问题
本文关键字:设置 区域性 问题 区域 存在 字符串 转换 十进制 | 更新日期: 2023-09-27 17:49:25
我有一个通过参数接收的简单字符串:
" 1.00 "
根据访问者的语言环境,有时会转换为:
"1"或"1,00"
第二个是一个问题,我总是需要它是一个句号(点)。美元,£
我正在使用:
decimal price = Convert.ToDecimal(stringPrice, new CultureInfo("en-GB"));
如果我使用en-GB区域性,为什么它仍然转换为"1,000"十进制?我尝试了InvariantCulture,同样的事情发生了。为什么会发生这种情况?这不重要,因为它是在后端,对吧?
转换正常-在内部,您在变量(price)中得到1.00的十进制表示。您看到的是"1,00"还是其他内容取决于您在输出变量的位置。