Tôi đang cố gắng giải mã tệp .MSG triển vọng thành tệp văn bản, sử dụng các lớp Apache POI.Printwriter println: không có dòng mới được tạo
Mọi thứ hoạt động tốt, ngoại trừ phương thức println
của PrintWriter
: nó không tạo ra dòng mới.
Nó chỉ liên kết từng câu một cách trực tiếp. Kết quả của đoạn mã dưới đây là
"De: textPara: " iso "De: " "Para: "
Tôi đã thử các mã trên một số máy: nó hoạt động trên địa phương tomcat instalation (máy tính Windows) của tôi, nhưng không thành công trên một tomcat hoặc WebLogic instalation trên một nền tảng Solaris. Tôi nghĩ rằng nó đã có một cái gì đó để làm với các thuật toán mã hóa, vì vậy tôi sử dụng PrintStream
thay cho Printwriter
, chỉ ra mã hóa ISO-8859-1, nhưng không may mắn không.
Bất kỳ ý tưởng nào?
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.");
}
}
bạn đang in gì? Bàn điều khiển, tệp nhật ký, hộp văn bản trong ứng dụng GUI, html? – nos
Bạn đang cố gắng thêm một dòng phụ giữa mỗi dòng. Hãy thử 'txtOut.println()' ngay sau mỗi lần bạn viết một dòng. –
Đầu ra chính xác mà bạn đang mong đợi, bên cạnh những gì thực sự là đầu ra? – Peter