在我的代码中,我想将字符串转换为float。但是当我将49.5这样的东西转换成浮点数时,它会给出输出495而不是49.5,我该如何解决这个问题呢?
float.Parse
,Single.Parse
或Convert.ToSingle()
;给出所有相同的结果......
String[] splittedLine = new String[25];
splittedLine = foundLine.Split('-');
float Z = float.Parse(splittedLine[2]);
float X = float.Parse(splittedLine[3]);
float Y = Single.Parse(splittedLine[4]);
PointF Center = new PointF(X /2, Y /2);
X
&中的值Y
是全数(例如207或49.5);
foundLine
是文本文档中的一行。
那么我怎么能从文本文件(49.5)中保留49.5而不是495呢?
答案 0 :(得分:3)
可能您的系统的小数字格式与文件的格式不同。
默认情况下,float.Parse
会使用您系统的区域设置来决定这一点。要手动指定格式,可以使用另一个重载:
float.Parse(splittedLine[2], CultureInfo.InvariantCulture);