質問

ねえ、私のQt C ++プログラムでは、それがまたは電子メールアドレスへのbashコマンドの出力のように、最初の128個の文字を送信する必要がある部分があります。 TTYからの出力は、ここでは、関連するコードスニペットですtextEdit_displayOutputと呼ばれる私のGUIのテキストボックスに捕獲され、私は、メッセージビルダ(オブジェクト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 );

「/ ls」にはbashを与えると改行が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>

出力は、それが表示された後、何も、「ルート」の周りに切り捨てられていないようにみえます。

どのようにエンコードしないと正常に一緒に作品のメール? vmimeちょうど目的にそのように表示し、電子メールの実際の内容は、完全かつ適切にフォーマットされていますか?

ありがとうございます。

正しい解決策はありません

他のヒント

=0Aは、ラインフィード(LF)文字です。
=09は、水平タブ(HT)です。

私は、これは自分の非印刷(制御)文字を符号化するMIMEの方法だと思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top