StreamReader を使用して、CSV ファイルの各行を文字列に読み込んでいます。各行を処理しているので、他の数字で囲まれているだけのカンマを取り除く必要があります。
たとえば、文字列が次の場合:
"textfield1", "textfield2", "100.00", "1,070.00"
この文字列全体から「1,070.00」からカンマを取り除くだけで、次のようになります。
"textfield1", "textfield2", "100.00", "1070.00"
CSV ファイルから読み取られた各文字列は、フィールド数や長さなどが異なる可能性があるため、場所をハードコーディングしたり、すべてのカンマを一括で削除したりせずに、文字列全体を調べる何か (正規表現でしょうか?) を使用する必要があります。
これが私が試してきたアプローチです:
StreamReader sr = new StreamReader(strInputFile);
string nextLine = sr.ReadLine();
try
{
while ((nextLine = sr.ReadLine()) != null)
{
string rawtext = nextLine.Replace("[0-9]"+","+"[0-9]" , "[0-9]"+"[0-9]");
// ....rest of code
}
}
これを行う方法がわからないため、これは明らかに機能しません:)
私はC#が初めてで、正規表現の経験が浅いため、これが比較的簡単であることを願っています。