【问题标题】:Compare / Search Text Files Line by Line Search for particular words逐行比较/搜索文本文件 搜索特定单词
【发布时间】:2012-10-05 15:26:45
【问题描述】:

我的朋友们:)

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

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);
           }

        }

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

【问题讨论】:

    标签: c# text compare


    【解决方案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);
        }
    }
    

    【讨论】:

    • 我们得到这里帮助的速度真是太棒了! , 这个解决方案效果很好,现在我又学到了一点:) 谢谢
    猜你喜欢
    • 1970-01-01
    • 2017-08-28
    • 1970-01-01
    • 2015-02-18
    • 1970-01-01
    • 1970-01-01
    • 2022-12-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多