我猜你在没有换行符的情况下添加到你的 StringBuilder 中,因为我刚刚测试过它,它对我来说很好用。
Imports System.Text
Module Module1
Sub Main()
Dim sb As New StringBuilder
sb.AppendLine("Line 1")
sb.AppendLine("Line 2")
sb.Append("Line 3" & vbCrLf)
sb.Append("Line 4 without CRLF")
sb.Append("Line 5")
Console.WriteLine(sb.ToString)
End Sub
End Module
对于上面的代码,我得到以下输出
Line 1
Line 2
Line 3
Line 4 without CRLFLine 5
希望这可以帮助。
编辑
好的,所以根据新信息(关于电子邮件),上述内容仍然适用。如果您添加到字符串生成器,.Append
您将丢失,或者更正确地说,看不到换行符。相反,您必须使用.AppendLine
它将所有重要的 CR 和 LF 代码添加到字符串的末尾。
但是,我有点困惑您如何发送电子邮件。我以前在网页上看到过这种方式,但从未在 vb.net 上看到过。以这种方式发送电子邮件几乎肯定会迫使您发送没有换行符的电子邮件!
我可以建议您查看 Microsoft 的以下内容,了解如何使用 System.Web.Mail 命名空间从 Visual Basic 发送电子邮件。这并不难,您可以更好地控制以这种方式发送的电子邮件....
微软示例