我必须将字符串转换为浮点数,只有普通转换器不起作用。
fi.Resolution = float.Parse(nodeC.InnerText);
fi.Resolution = (float)nodeC.InnerText;
fi.Resolution = Single.Parse(nodeC.InnerText);
并且更多这些方法不起作用。当 nodeC.InnerText 为 0.01 时它返回 1,但如果 nodeC.InnerText 为 5.72958e-07 它返回 0,0575958 并且 0.0001 也返回 1,所以它不是位移。
有谁知道为什么这个标准的 c# 转换不起作用?
所以我正在尝试编写自己的 StringToFloat 方法,但它失败了:P
public float StringToFloat(string input)
{
float output = 0;
char[] arr = input.ToCharArray();
for (int i = 0; i < input.Length - 1; i++)
{
if (arr[i].Equals("."))
output += 1;//change
else
output += Convert.ToInt32(arr[i]);
}
return output;
}