0

私の csv ファイルには 8 列と 30 万行が含まれています。私の csv ファイルの例を次に示します。 「 ;http://images.amazon.com/images/P/0195153448.01.MZZZZZZZ.jpg「;」http://images.amazon.com/images/ P/0195153448.01.LZZZZZZZ.jpg "
"0002005018";"クララ・カラン";"リチャード・ブルース・ライト";"2001";"ハーパーフラミンゴ カナダ";" http://images.amazon.com/images/P/0002005018.01.THUMBZZZZ .jpg ";" http://images.amazon.com/images/P/0002005018.01.MZZZZZZZ.jpg ";"http://images.amazon.com/images/P/0002005018.01.LZZZZZZZ.jpg

今、私は読むためのこのコードを持っています

string path = @"C:\Users\SEMRUK\Desktop\exceller\kitaplik.csv";
public DataTable GetDataTabletFromCSVFile(string PathFile)
    {
        DataTable csvData = new DataTable();

        TextFieldParser csvReader = new TextFieldParser(PathFile);

                csvReader.SetDelimiters(new string[] {";"});
                csvReader.HasFieldsEnclosedInQuotes = true;
                string[] colFields = csvReader.ReadFields();
                foreach (string column in colFields)
                {
                    DataColumn datecolumn = new DataColumn(column);
                    datecolumn.AllowDBNull = true;
                    csvData.Columns.Add(datecolumn);
                }               
                string[] fieldData = csvReader.ReadFields();
                while (!csvReader.EndOfData)
                {
                    for (int i = 0; i < fieldData.Length; i++)
                    {
                        if (fieldData[i] == "")
                        {
                            fieldData[i] = null;
                        }
                MessageBox.Show(fieldData[i]);
                    }
            csvData.Rows.Add(fieldData);

        }
        return csvData;
    }

この方法で最初の 8 行を読み取ることができます。しかし、その後は何も読み取ることができません。最初の 8 行を読み取るだけです。タブの後にも読み取る必要があることをコードに伝えるにはどうすればよいですか。\t を setdelimiters に追加しようとしましたが、動作しません。何か提案はありますか?

4

1 に答える 1