文字列を double に解析する際に問題があります。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"
. 本当に、なぜ文字列を double に変換できないのか、私にはわかりません。
私が間違っていることを教えていただければ幸いです。