Я предполагаю, что вы добавляете в свой 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
Надеется, что это помогает.
EDIT
Итак, на основе новой информации (о почте) выше остается в силе. Если вы добавите строковый конструктор с .Append
, вы проиграете или, вернее, не увидите строки новой строки. Вместо этого вы должны использовать .AppendLine
, который добавит все важные коды CR и LF в конец строки.
Однако, я немного смущен, как вы отправляете электронную почту. Я видел, как это делалось с веб-страницы, но никогда с vb.net. Отправка электронной почты таким образом почти наверняка заставит вас отправить электронное письмо без символов новой строки!
Могу я предложить вам взглянуть на следующее из Microsoft о том, как отправлять электронную почту с Visual Basic с использованием пространства имен System.Web.Mail. Это не трудно, и вы получите гораздо больше контроля над электронной почтой вы отправляете этот путь ....
Microsoft example
Можете ли вы предоставить код, который демонстрирует проблему? Как вы добавляете новые строки в StringBuilder в первую очередь? – Nick
Я добавил код. – Lou