Apache POIクラスを使用して、Outlookの.MSGファイルをテキストファイルにデコードしようとしています。Printwriter println:新しい行が作成されない
のメソッドを除いてすべて正常に動作します。新しい行を作成しません。
すべての文を1つずつ順番に連結します。それは私の地元のTomcatのインスタレーション(Windowsマシン)上で動作しますが、Solarisプラットフォーム上のTomcatまたはWebLogicのインスタレーションに失敗します。以下のコードスニペットの結果は、私はいくつかのマシン上のコードを試してみました
"De: textPara: " iso "De: " "Para: "
です。私はそれがエンコーディングアルゴリズムと関係があると思ったので、Printwriter
の代わりにPrintStream
を使用しました。これはエンコーディングISO-8859-1を示していますが、運もありません。
try {
byte [] msgByte = Base64.decodeBase64(msgBase64);
InputStream inputMsg = new ByteArrayInputStream(msgByte);
msg = new MAPIMessage(inputMsg);
/* 1. Transform MSG to TXT. */
try {
txtOut = new PrintWriter(outputMsg);
try {
String displayFrom = msg.getDisplayFrom();
txtOut.println("De: "+displayFrom);
} catch (ChunkNotFoundException e) {
_logger.info("Error extrayendo displayFrom: "+e);
}
try {
String displayTo = msg.getDisplayTo();
txtOut.println("Para: "+displayTo);
} catch (ChunkNotFoundException e) {
_logger.info("Error extrayendo displayTo: "+e);
}
} finally {
if(txtOut != null) {
txtOut.close();}
else {
_logger.error("No se ha podido parsear el mensaje.");
}
}
あなたは何に印刷していますか?コンソール、ログファイル、GUIアプリケーションのテキストボックス、html? – nos
各行の間に余分な行を追加しようとしていますか?行を書くたびに 'txtOut.println()'を試してみてください。 –
実際に出力されるものだけでなく、期待している正確な出力は何ですか? – Peter