2016-04-02 17 views
-2

多次元配列に私は多次元配列に格納したい私は</p> <p>アレックスNAME</p> <p>ロンドンCITYのテキストファイルを持っている

イングランドカントリー

をテキストを入力するにはどうすればよい

string[,] tokened = new string[3, 2]; 
     int i = 0, j = 0; 
     string[] input = File.ReadAllLines(@"D:\abc.txt"); 
     foreach (string line in input) 
     { 
      foreach (var row in line.Split('\n')) 
      { 
       foreach (var col in row.Trim().Split(' ')) 
       { 
        tokened[i, j] = Convert.ToString((col.Trim())); 
        j++; 
       } 
       i++; 
      } 
     } 

私はこのコードを書いていますが、動作しません。

+0

'しかしなぜwork.'ではないでしょうか?任意のエラー?例外?予想外の結果? – Eser

+0

最初の分割は1行ずつ読む必要があります。このMSDを参照してくださいhttps://msdn.microsoft.com/en-us/library/ezwyzy7b.aspx –

+0

入力文字列が正しい形式ではありませんでした。この行にある tokened [i、j] = Convert.ToString(int.Parse((col.Trim()))); –

答えて

0

あなたは試みることができる:

 var numberOfRecords = 3; 
     var numberOfFields = 2; 
     var columnDelimeter = ' '; 
     var lineSeparator = "\r\n\r\n"; 
     var tokened = new string[numberOfRecords, numberOfFields]; 
     var input = System.IO.File.ReadAllText(@"d:\abc.txt"); 
     var lines = input.Replace(lineSeparator, "|").Split('|').ToArray(); 
     //loop through rows 
     for (var row = 0; row < lines.Length; row++) 
     { 
      //split the columns with a space 
      var cols = lines[row].Split(columnDelimeter).ToArray(); 
      for(var col = 0; col < numberOfFields; col++) 
      { 
       tokened[row, col] = cols[col]; 
      } 
     } 
関連する問題