-1

テキスト ファイル (メモ帳の txt ファイル) からデータを読み込んでリスト ボックスに表示する際に問題が発生しています。以下は私のコードですが、なぜデータをロードしないのかわかりません

private void loadData() {
        try {
            using (StreamReader reader = new StreamReader("visits.txt"))     //Reads in file
            {
                string line;
                while ((line = reader.ReadLine()) != null) {
                    string[] data = line.Split(',');               //Splits the lines up when there is a ,
                    lstDeliveries.Items.Add(data[0] + ", " + data[1] + ", " + data[2]);
                    lstPickups.Items.Add(data[3] + ", " + data[4]);                                              
                }
            }
        }
        catch (FileNotFoundException) {
            MessageBox.Show("The file was not found!!");      //Provides error if file not found
            Environment.Exit(0);                        //Closes application 
        }
    }        
4

1 に答える 1

2

どのような問題を抱えているかを提供しませんでした。ファイルの一部の行が予期しない形式になっていると思います。データ配列に少なくとも 5 つの項目があることを確認する条件を追加します。

string[] data = line.Split(',');
if (data.Length >= 5)
{             
   lstDeliveries.Items.Add(String.Format("{0}, {1}, {2}", data[0], data[1], data[2]);
   lstPickups.Items.Add(String.Format("{0}, {1}", data[3], data[4]); 
}

またString.Format、文字列をフォーマットするためのより良いオプションです。

于 2012-11-26T23:12:33.970 に答える