2014-04-19 124 views
0

我有一個外部文本文件,其中包含數字。如4 54 12 32由空格分隔。 我希望能夠讀取所有數字並將它們添加到列表中。從文本文件中讀取數字並分隔空格

static void Main(string[] args) 
     { 
      List<int> numbers; 
      numbers = new List<int>(); 

      StreamReader file = new StreamReader("C:\\text.txt"); 

      while (!file.EndOfStream) 
      { 
       string line = file.ReadLine(); 
       Console.Write(line + " "); 
      } 
     } 

的ReadLine讀取整個行,所以我不能分開的單獨號碼,並將其轉換爲整數,我試圖瞭解它讀取每個數字的字符代碼,而不是數字本身。

回答

1

嘗試拆分空格

string [] numbers = file.ReadLine().Split(new char[]{' '}, 
             StringSplitOptions.RemoveEmptyEntries); 
0

行這種方法可以幫助你。

public static IEnumerable<int> ReadInts(string path) 
    { 
     var txt = File.ReadAllText(path); 
     return Regex.Split(txt, @"\s+").Select(x => int.Parse(x)); 
    } 
0

您可以使用File.ReadAllText方法:

var numbers = File.ReadAllText("C:\\text.txt") 
      .Split() 
      .Where(x => x.All(char.IsDigit)) 
      .Select(int.Parse) 
      .ToList(); 
相關問題