1

嗨我的朋友们:)

所以我有一个小问题,我有一个包含以下内容的文本文件,我来自电子邮件脚本。

Email: usera@hotmail.com
Status: done
Lang: En
Date: 05-10-2012
--------------------------------
Email: userb@hotmail.com
Status: waiting
Lang: En
Date: 05-10-2012

好的,现在我将阅读此文本文件并在 Richtextbox 中仅写入电子邮件和状态。像这样

usera@hotmail.com;done
userb@hotmail.com;waiting

只有状态和电子邮件应该在以“;”分隔的 Richtextbox 中 其他文本( 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);
           }

        }

但是我如何也进入“状态”?提前致谢 :)

4

1 回答 1

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);
    }
}
于 2012-10-05T15:39:19.673 回答