0

運の悪いデータを含む CSV ファイルを解析しようとしています。オンラインでさまざまなツールを試しましたが、CSV ファイルを正しく解析できるツールはありませんでした。CSVデータの解析は非常に簡単だと思うので、ここで助けを求めているという事実に困惑しています。

CSV データの形式は次のようになります。

",95,54070,3635,""Test Reservation"",0,102,0.00,0.00,2014-12-31,""Name of customer"",""$12.34 + $10, special price"",""extra information"",,CustomerName,,,,,1234567890,youremail@domain.com,CustomerName,2014-12-31,23:59:59,16,0,60,2,120,0,NULL,NULL,NULL,"

現在のコード:

private void btnOpenFileDialog_Click(object sender, EventArgs e)
    {
        DialogResult result = openFileDialog1.ShowDialog();

        if (result == DialogResult.OK)
        {
            using (StreamReader reader = new StreamReader(openFileDialog1.FileName))
            {
                string line;

                while ((line = reader.ReadLine()) != null)
                {
                    ParseCsvLine(line);
                }
            }
        }
    }

    private void ParseCsvLine(string line)
    {
        if (line != string.Empty)
        {
            string[] result;

            using (var csvParser = new TextFieldParser(new StringReader(line)))
            {
                csvParser.Delimiters = new string[] { "," };

                result = csvParser.ReadFields();
            }

            foreach (var item in result)
            {
                Console.WriteLine(item + Environment.NewLine);
            }
        }
    }

結果変数には 1 つの項目のみがあり、次の項目があります。

,95,54070,3635,"Test Reservation",0,102,0.00,0.00,2014-12-31,"Name of customer","$12.34 + $10, special price","extra information",,CustomerName,,,,,1234567890,youremail@domain.com,CustomerName,2014-12-31,23:59:59,16,0,60,2,120,0,NULL,NULL,NULL,
4

2 に答える 2

0

csv ファイル内の厄介なカンマについては、以前の投稿をご覧ください。ここにリンクしています。

また、Mihai、あなたのソリューションは 1 行だけでうまく機能しますが、解析する行が多くなると失敗します。

于 2014-11-24T11:42:35.950 に答える