2012-10-05 110 views
1

海蘭好友:)由線搜索比較/搜索文本文件行特定的詞

所以我有一個豆蔻問題,我有一個文本文件,從電子郵件腳本內容如下 這個我。

Email: [email protected] 
Status: done 
Lang: En 
Date: 05-10-2012 
-------------------------------- 
Email: [email protected] 
Status: waiting 
Lang: En 
Date: 05-10-2012 

好吧,現在我將閱讀這個文本文件,並在Richtextbox中只寫電子郵件和狀態。 像這樣

[email protected];done 
[email protected];waiting 

只有狀態和電子郵件應在RichTextBox的sepperated用「;」 其他文本(Lang,Date)可以忽略。

我的想法是閱讀流中的文本文件並嘗試使用Foreach fuc來查找「電子郵件」和「狀態」,然後在Richbox中打印,但我認爲這不是一個好辦法。 所以我問你最好的辦法是什麼讓這成爲可能?

我的測試代碼

string[] filea = File.ReadAllLines("test.txt"); 
     foreach (var s in filea) 
     { 
      if (s.Contains("Email")) 
      { 

       richTextBox1.AppendText(s + Environment.NewLine); 
      } 

     } 

,但我怎麼在那裏得到的「狀態」呢? 感謝提前:)

回答

1

爲了得到所要求的輸出,你需要分割每行,然後抓住你想要的部分:

string[] filea = File.ReadAllLines("test.txt"); 
foreach (var s in filea) 
{ 
    string[] parts = s.Split(':'); 

    if (parts.Length == 2) 
    { 
     if (parts[0].Contains("Email")) 
      richTextBox1.AppendText(parts[1].Trim()); 

     if (parts[0].Contains("Status")) 
      richTextBox1.AppendText(":" + parts[1].Trim() + Environment.NewLine); 
    } 
} 
+0

真棒有多快,我們在這裏得到幫助! ,這種營養完美的工作,現在我又學到了一點:)謝謝 – galeda