2016-01-18 58 views
-1

我希望用戶能夠選擇以某種方式寫入的文本文件(每行1個數字),然後將文件轉換爲數組。我有一些零碎的工作,但我無法在同一時間完成所有工作。任何幫助,將不勝感激。將文件導入數組

private void Load_Button_Click(object sender, EventArgs e) 
    { 

     int counter = 0; 
     string line; 
     List<int> list = new List<int>(); 
     string fileName = ""; 

     //OpenFileDialog ofd = new OpenFileDialog(); 
     //ofd.Filter = "TXT File|*.txt"; 
     //ofd.Title = "Open File"; 

     // if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK) 
     // { 
     File_Label.Text = "C:/Users/Neilan/Desktop/sample.txt"; 
      //fileName = "@" + ofd.SafeFileName; 

     //MessageBox.Show(ofd.FileName); 

     System.IO.StreamReader file = new System.IO.StreamReader(@"C:\Users\Neilan\Desktop\sample.txt"); 


      while ((line = file.ReadLine()) != null) 
      { 
       Unsorted_Box.Text += line + ", "; 
       //list.Add(int.Parse(fileName)); 
       counter++; 
      } 
      dataArray = list.ToArray(); 

     // } 

    } 
+0

該文件如何看起來像?什麼是你的預期產量? –

+0

這不應該被標記爲重複的,因爲它比其他問題早兩天 –

回答

1

這個問題可以通過一行

var resultArray = Array.ConvertAll(System.IO.File.ReadAllLines("filename.type"), str => int.Parse(str)); 

而是 「filename.type」 來解決,你可以把類似File_Label.Text

2

你可以做到這一點。

var numberarray = File.ReadAllLines("stringpath").Select(int.Parse).ToArray(); 

看着你的代碼,我想你想以逗號分隔的格式顯示這些值給用戶。您可以通過以下代碼片段來實現此目的。

Unsorted_Box.Text = String.Join(",", numberarray.ToArray()); 

希望這有助於!