我正在读取其中包含值的XML文件。当我阅读它们时,它们是字符串。
因此,当我尝试将它们转换为Double
或Decimal
时,该点消失了。
decimal dec = Convert.ToDecimal("3.1922");
MessageBox.Show(dec.ToString()); // 31922
我究竟做错了什么?
最佳答案
这跟你现在的文化有关
decimal dec = Convert.ToDecimal("3.1922",CultureInfo.CreateSpecificCulture("de-DE"));
MessageBox.Show(dec.ToString()); //31922
dec = Convert.ToDecimal("3.1922", CultureInfo.CreateSpecificCulture("en-US"));
MessageBox.Show(dec.ToString()); //3.1922
dec = Convert.ToDecimal("3,1922", CultureInfo.CreateSpecificCulture("de-DE"));
MessageBox.Show(dec.ToString()); //3.1922