这是我的代码:如何防止将decimal.TryParse转换为“。”为“。”?
string myValue = "0,203";
decimal.TryParse(myValue, NumberStyles.Any, CultureInfo.CurrentCulture, out myValueAsDecimal;
...
myValueAsDecimal is 0.203 now
难道myValueAsDecimal
有0203后TryParse
或decimal
内部表示始终是0.203,我需要的,如果格式化输出GUI我需要0,203?
它既没有逗号也没有句点,它作为表示被存储。 – Sayse
数字的内部表示总是二元的。文字(人)表示取决于您指定的文化(或未指定)。要显示具有特定小数点的数字,您必须将正确的文化传递给ToString方法或用于格式化的其他方法。要指定一个值,必须使用点作为小数点,因为ti是编程语言的语法。 –
MIkroDel,我想补充一点,你可能不应该试图强制用户使用一个小数分隔符,你的应用程序应该支持他们正在使用的任何文化。用户可能不熟悉不同的文化使用不同的小数点分隔符,绝对不会尝试用外部分隔符输入自己的数字 – Sayse