我有以下代码:
decimal kwh = decimal.Parse(textBox1.Text,
NumberStyles.AllowDecimalPoint,
NumberFormatInfo.CurrentInfo);
decimal sale_price = decimal.Parse(textBox2.Text,
NumberStyles.AllowDecimalPoint,
NumberFormatInfo.CurrentInfo);
decimal totalamnt = sale_price * kwh;
我的问题是,当区域设置设置为希腊语时,它不接受小数点后的任何数字,当您使用“,”输入时
我尝试InvariantInfo
使用“。”输入小数,但它再次不接受它们。
有趣的是,当您进入控制面板 -> 区域和语言 -> 附加设置时,您可以设置小数点所需的运算符和千位运算符。如果您将小数点符号设置为“.”.......一切正常。
无论您使用 InvariantInfo 并将其输入为“.”,还是您使用 CurrentInfo 并将其输入为“,”
这让我发疯,我尝试了很多方法,不仅是 Parse 方法,而且解决它的唯一方法是将十进制符号设置为“。”但我不能只是改变人们的区域设置,因为我可能会搞砸其他希腊语他们正在使用的软件。
请人们帮助我..我对计算机上的希腊语失去了理智。我真的很感激和感谢任何可以帮助我解决这个问题的人
(我将我的区域设置设置为希腊语)插入语句我将 0.25 作为 sale_price 和 5.26 作为 kwh 导入。我正在使用断点,我看到变量的值是 0.25 和 1.2 使用 InvariantInfo。当它们存储在数据库中时,它们存储为 0 和 5。当我在区域设置中设置小数运算符“。”而不是“,”时,我导入 0.25 和 5.65,它们被正确存储。当我将区域设置设置为 English Us 并插入 0.25 和 5.65 时,它们已正确存储