2

当我尝试在 WP7 C# 上将 String 转换为 Double 时出现此错误。

tokenvalue = Convert.ToDouble(saParsed[i].Replace(".", ","));

我在 WP7 中收到此错误。类型的第一次机会异常System.FormatException发生在mscorlib.dll

有什么办法可以避免它还是仅仅是模拟器的错误?

4

3 回答 3

7

首先你可以尝试使用这个:

double tokenvalue = Convert.ToDouble(saParsed[i], CultureInfo.InvariantCulture);

无论如何,您最好检查一下是否正常:

double tokenvalue;
if (Double.TryParse(saParsed[i], out tokenvalue) 
{ 
    // Do what you please here
}
于 2012-04-13T06:37:27.240 回答
0

尝试这样的事情。

var tokenvalue = Convert.ToDouble(saParsed[i]);
var tokenValueText = tokenValue.ToString().Replace(".", ",");

如果 saParsed[i] 持有有效的双精度值,希望它能正常工作。

于 2012-04-13T06:40:34.747 回答
0

尝试使用以下语句对其进行转换:

double tokenvalue; 
if (double.TryParse(saParsed[i], NumberStyles.Any, 
    NumberFormatInfo.CurrentInfo, out tokenvalue))
{  
    // Convertion was successfull
} 
于 2012-04-13T06:49:33.517 回答