Wir Javamail verwenden E-Mails von E-Mail-Konten zu holen & in letzter Zeit haben wir mit chinesischem, japanischen Zeichen gesendet hatten E-Mails.seltsamen Ausgang bekommen, wenn E-Mail mit fremden Zeichen zu analysieren versuchen, Javamail mit
Zum Beispiel hier einige japanische Inhalt:
限定クリエイティブツールのコレクションを含む高速写真編集ソフトウェア。
Und es wäre wahrscheinlich wie folgt ausgegeben bekommen:
<div>=1B$B$"=1B(B =1B$B$$=1B(B =1B$B$&=1B(B =1B$B$(=1B(B =1B$B$*=1B(B =1B$B=
$+=1B(B =1B$B$-=1B(B =1B$B$/=1B(B =1B$B$1=1B(B =1B$B$3=1B(B =1B$B$5=1B(B =
=1B$B$7=1B(B =1B$B$9=1B(B =1B$B$;=1B(B =1B$B$=3D=1B(B =1B$B$,=1B(B =1B$B$.=
=1B(B =1B$B$0=1B(B =1B$B$2=1B(B =1B$B$4=1B(B =1B$B$Q=1B(B =1B$B$T=1B(B =1B$=
B$W=1B(B =1B$B$Z=1B(B =1B$B$]=1B(B</div>
Und content-type
in der Regel text/html; charset=UTF-8
ist.
Wir verwenden writeTo
Methode, um alle Header und Inhalte zu erhalten.
Ich habe versucht, das folgende zu tun, aber es hat nicht funktioniert:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
m.writeTo(baos);
pm.setUnProcessedMessage(baos.toString("UTF-8")); //Here I am explicitly stating the encoding
Ich glaube auch, das Problem sein könnte, weil wir eine alte Version von Java Mail (1.5.0) verwenden.
Was können wir hier tun fremde Zeichen zu behandeln?