我在将字符串解析为双精度时遇到问题。我有StreamWriter
一个文本文件的阅读行。文本文件有以下几行:
17-09-2012: (100,98)
17-09-2012: (50,57)
现在,我想使用括号内的值,将它们加在一起并将它们显示在文本框中。到目前为止,我有以下内容:
int counter = 0;
double res = 0;
string line;
System.IO.StreamReader file = new System.IO.StreamReader("d:\\test.txt");
while ((line = file.ReadLine()) != null)
{
string par = Regex.Match(line, @"\(([^)]*)\)").Value;
double par2 = double.Parse(par);
res += par2;
counter++;
}
file.Close();
textBox1.Text = res.ToString();
但是,显然输入字符串的格式不正确,我觉得这很奇怪,因为正则表达式应该删除除括号内的数字之外的所有内容。我什至通过将字符串写入文本框而不先将它们添加在一起来检查这一点,它显示了"100,9850,57"
. 真的,我不明白,为什么它不能将字符串转换为双精度。
我希望你能告诉我,我做错了什么。