C#从txt获取字符串,然后复制到新的txt

时间:2015-10-07 13:43:35

标签: c# file text contains mailkit

我的想法存在一个小问题;)

我想从gmail(使用Mailkit)读取som电子邮件并将其保存到多个文件中。

好的,你可能会认为“wtf正在进行”,...我想通过邮件提取订单并将它们保存为单个文件以排序日志/协议1。我想我可以更好地处理它

Properties.Settings.Default.status = "Status: Online";
using (var client = new ImapClient())
{
    client.Connect(Properties.Settings.Default.Server, Properties.Settings.Default.Port, true);
    client.Authenticate(Properties.Settings.Default.Email, Properties.Settings.Default.Passwort);
    client.Inbox.Open(FolderAccess.ReadWrite);  

    for (int i = 0; i < client.Inbox.Count; i++)
    {
        var message = client.Inbox.GetMessage(i);
        var html = message.HtmlBody;
        var text = message.TextBody;
        var header = message.Subject + "  " + message.From + "  " + message.Date + "   " + message.MessageId;

        File.AppendAllLines(Properties.Settings.Default.pathmail + @"\" + "MailMain.txt", new[] { message.HtmlBody });
        string line = File.ReadLines(Properties.Settings.Default.pathmail + @"\" + "MailMain.txt").Skip(i).Take(1).First();


        dataGridView1.Rows.Add(message.Subject, message.From, message.Date, message.MessageId);

MailMain.txt包含一行一行的gmail邮件,因此很难很好地过滤它们。

问题1:

我需要获取(例如)txt文件的第一行,然后创建具有特定名称的新txt(Properties.Settings.Default.pathmail)。一行一行

例如:将MailMain.txt中的第1行复制到Thisisyourfirstline.txt 将MailMain.txt中的第2行复制到Thisisyoursecondline.txt。

问题2:

电子邮件正文包含一些HTML(&lt; / b&gt;)。我需要过滤所有这些。有什么建议吗?

greeetings

1 个答案:

答案 0 :(得分:-1)

我会使用 StreamReader StreamWriter 来逐行获取和写入内容。 String.Replace 以删除html标记。