vmime으로 이메일을 구성 할 때 텍스트가 달린 텍스트
문제
이봐, 내 QT C ++ 프로그램에는 Bash 명령의 출력 중 첫 128 자 이상을 이메일 주소로 보내야 할 부분이 있습니다. TTY의 출력은 GUI의 TextedIt_displayOutput이라는 GUI의 텍스트 상자에 캡처되어 메시지 Builder (Object 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 /'와 Newline을 제공하면 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의 단지 Mime의 방법이라고 생각합니다.
제휴하지 않습니다 StackOverflow