将eml转换为字符串msg vb.net

将eml转换为字符串msg vb.net,vb.net,imap,eml,Vb.net,Imap,Eml,我提取eml文件并获取正文消息,以便能够将数据库作为varchar数据类型插入。这里的问题是如何在vb.net中将eml文件转换为字符串。我使用的是.NET3.5SP1,数据库是MSSQL2008。提前谢谢 您的问题不清楚-您正在尝试从磁盘加载EML文件吗?不清楚您的代码与您的问题有何关系,或者您的输入是什么。是的,我正在尝试从远程服务器加载EML,并从EML文件中提取消息。我从eml文件中获取消息,并尝试使用上述代码将其转换为字符串。想要插入数据库的邮件仍然无法读取。哪个远程服务器?对不起,你

我提取eml文件并获取正文消息,以便能够将数据库作为varchar数据类型插入。这里的问题是如何在vb.net中将eml文件转换为字符串。我使用的是.NET3.5SP1,数据库是MSSQL2008。提前谢谢

您的问题不清楚-您正在尝试从磁盘加载EML文件吗?不清楚您的代码与您的问题有何关系,或者您的输入是什么。是的,我正在尝试从远程服务器加载EML,并从EML文件中提取消息。我从eml文件中获取消息,并尝试使用上述代码将其转换为字符串。想要插入数据库的邮件仍然无法读取。哪个远程服务器?对不起,你的问题还不清楚。请阅读。你真的要把它当作一个字符串吗?为什么不将其存储为blob?我不知道如何使用blob。是否有其他方法来隐藏eml数据?我对eml文件格式一无所知。如果它只是不透明的二进制数据,您可以使用base64对其进行编码。。。但是为什么要麻烦呢?这就是BLOB的用途——如果你不知道如何使用它们,那就去学习而不是去解决它。当然,如果EML文件在某种编码中是自然的文本,那么就用这种编码读取它。
     Dim msg As System.Net.Mail.MailMessage = New System.Net.Mail.MailMessage()
    msg.BodyEncoding = Encoding.UTF8
    msg.SubjectEncoding = Encoding.UTF8

    Dim plainView As AlternateView = AlternateView.CreateAlternateViewFromString(PrintablePage.StripHTML(body).Trim, System.Text.Encoding.UTF8, "text/plain")
    msg.AlternateViews.Add(plainView)
    Dim userState As Object = msg

    Response.Write(userState)