Искаженный текст при создании электронных писем с помощью vmime

StackOverflow https://stackoverflow.com/questions/2440528

  •  19-09-2019
  •  | 
  •  

Вопрос

Привет, в моей программе Qt C ++ есть часть, где ей необходимо отправить первые 128 символов или около того выходных данных команды bash на адрес электронной почты.Выходные данные tty записываются в текстовое поле в моем графическом интерфейсе с именем textEdit_displayOutput и помещаются в мое сообщение, которое я создал с помощью конструктора сообщений ( объект m_vmMessage). Вот соответствующий фрагмент кода:

m_vmMessage.getTextPart()->setCharset( vmime::charsets::US_ASCII );
m_vmMessage.getTextPart()->setText( vmime::create < vmime::stringContentHandler > ( ui->textEdit_displayOutput->toPlainText().toStdString() ) );
vmime::ref < vmime::message > msg = m_vmMessage.construct();
vmime::utility::outputStreamAdapter out( std::cout );
msg->generate( out );

Предоставление bash 'ls /' и новой строки заставляет vmime выдавать вывод терминала следующим образом:

ls /=0Abin    etc=09   initrd.img.old  mnt=09 sbin=09  tmp=09   vmlinuz.o=
ld=0Aboot   farts=09   lib=09=09   opt=09 selinux  usr=0Acdrom  home=09  =
 lost+found=09   proc  srv=09  var=0Adev    initrd.img  media=09   root  =

В то время как это должно выглядеть примерно так:

ls /
bin    etc     initrd.img.old  mnt   sbin     tmp      vmlinuz.old
boot   farts       lib         opt   selinux  usr
cdrom  home    lost+found      proc  srv      var
dev    initrd.img  media       root  sys      vmlinuz
18:22>

Вывод, похоже, усечен вокруг 'root', после него ничего не отображается.

Как мне правильно закодировать и собрать воедино электронное письмо?Отображает ли vmime это просто так специально, и фактическое содержимое электронного письма является полным и правильно отформатированным?

Спасибо!

Нет правильного решения

Другие советы

=0A является символом перевода строки (LF).
=09 представляет собой горизонтальную вкладку (HT).

Я думаю, что это просто способ MIME кодирования ваших непечатаемых (управляющих) символов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top