2014-02-16 66 views
0

IM試圖使C#從一個txt文件中的每一行中讀取文本然後基於行的變量,這是代碼即時試圖使用子工作不正常

string line; 
FileInfo file = new FileInfo("update.txt"); 
StreamReader stRead = file.OpenText(); 
while ((line = stRead.ReadLine()) != null) 
{ 
    if (line.StartsWith("version=") == true) 
    { 
     Version.TryParse(line.Substring(8), out version); 
    } 
    if (line.StartsWith("md5=") == true) 
    { 
     md5 = line.Substring(4); 
    } 
    if (line.StartsWith("url=") == true) 
    { 
     url = line.Substring(4); 
    } 
    if (line.StartsWith("changelog=") == true) 
    { 
     changelog = line.Substring(10); 
    } 
} 
stRead.Close(); 

我把斷點在看發生了什麼事和閱讀txt文件,但由於某種原因未設置變量我聲明瞭代碼

private Version version; 
private string md5; 
private string url; 
private string changelog; 

僅版本變量上面這些變量被設置請幫助謝謝

哦,這是測試txt即時通訊使用

version=1.1.0.0 
md5=564C8AACFBDAA1F5A0AA44A85C53BF55 
url=fbnfhbcfn 
changelog=bug fixes 
+0

你需要證明樣本輸入文件(小到可以讀取該文件,但顯示你所期望的所有輸入,確保在這裏不會打字,但複製/粘貼以避免修復錯誤的輸入,如錯誤的情況...)。 –

+0

這是測試txt版本= 1.1.0.0 md5 = 564C8AACFBDAA1F5A0AA44A85C53BF55 url = fbnfhbcfn changelog =錯誤修正 – outlaw1994

+0

爲什麼不用'='分割? – Prix

回答

3

代碼是很好的方式。有些事情要記住:

  1. 文本文件update.txt需要在與可執行文件相同的目錄中。因此,如果控制檯應用程序或Windows應用程序應該在bin/Debug中,例如開始調試時。如果您已將其包含在項目中,請確保將構建操作設置爲「內容」,並將「複製到輸出目錄」設置爲「始終」。 (這可以在解決方案中的文件屬性下找到)。
  2. update.txt需要由可執行/運行