Apache POI 클래스를 사용하여 Outlook .MSG 파일을 텍스트 파일로 디코딩하려고합니다.Printwriter println : 새 줄을 만들지 않았습니다.
메서드가 PrintWriter
인 경우를 제외하면 모든 것이 올바르게 작동합니다. 새 라인을 만들지 않습니다.
그냥 모든 문장을 차례로 연결합니다. 내 지역의 바람둥이 소 instalation (Windows 시스템)에서 작동하지만, Solaris 플랫폼에 바람둥이 또는 웹 로직의 소 instalation에 실패 아래의 스 니펫 코드의 결과는 내가 여러 대의 컴퓨터에 코드를 시도
"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