2011-01-28 35 views
-2

我從文件中讀取數據這樣變化串入在C#VAR數據類型

using (StreamReader r = new StreamReader("newfile.txt")) 
{ 

      string lines1; 
      lines1 = r.ReadLine(); 
      var lines = lines1; 

      foreach (string line in lines) 
      { 
       var dictionary = new Dictionary<String, Int32>(); 
       var records = line.Split(','); 

我怎樣才能字符串數據類型轉換爲VAR數據類型?

如果我用這條線

var lines = lines1; 

然後在

var records = line.Split(','); 
+0

如果不格式化,請至少標記您的問題。 – BoltClock 2011-01-28 18:26:11

回答

6

誤差ACCUR沒有這樣的東西作爲一個var數據類型。在C#中,「var」的意思是「讓編譯器根據上下文爲我找出數據類型」。在這種情況下,使用:

var lines = lines1; 

或:

string lines = lines1; 

將產生完全相同的代碼。該錯誤消息與var而不是string的使用無關。

這裏的問題是這樣的:

lines1 = r.ReadLine(); 
var lines = lines1; 

// ... 
foreach (string line in lines) 

你正在閱讀一單行單串,然後嘗試做的:「在我的單串的foreach串」。我懷疑你想要更類似的東西:

using (StreamReader r = new StreamReader("newfile.txt")) 
{ 
    while (r.Peek() >= 0) 
    { 
     string line = r.ReadLine(); 
     var dictionary = new Dictionary<String, Int32>(); 
     var records = line.Split(','); 
     // use records.... Note that above is the same as: 
     // string[] records = line.Split(','); 
    } 
} 
1

「split」函數返回一個數組。

+1

您的回覆將作爲評論更合適。 – 2011-01-28 18:40:30