0
줄 바꿈으로 javax.mail.Message의 내용을 읽어야합니다. 나는이 알고리즘을 사용하는 순간 stackoverflow에서 찾았지만 내용을 읽은 후에는 내용에 새로운 줄이 없어서 문자열을 읽을 때 Scanner.nextLine()은 한 줄만 읽습니다.줄 바꿈으로 전자 메일 내용 읽기
private String getTextFromMimeMultipart(
MimeMultipart mimeMultipart) throws Exception{
String result = "";
int count = mimeMultipart.getCount();
for (int i = 0; i < count; i++) {
BodyPart bodyPart = mimeMultipart.getBodyPart(i);
if (bodyPart.isMimeType("text/plain")) {
result = result + "\n" + bodyPart.getContent();
} else if (bodyPart.isMimeType("text/html")) {
String html = (String) bodyPart.getContent();
result = result + "\n" + org.jsoup.Jsoup.parse(html).text();
} else if (bodyPart.getContent() instanceof MimeMultipart){
result = result + getTextFromMimeMultipart((MimeMultipart)bodyPart.getContent());
}
}
return result;
}
읽고있는 내용으로는 무엇을하고 있는지 명확하지 않습니다. Windows를 사용하는 경우 \ r \ n 대신 \ n을 사용하는 것이 가능합니다. 그러나 그것은 단지 추측입니다. 질문을 다시 말하고 더 많은 정보를 제공하십시오. – Tobias
그래, 내 문제가 해결되었습니다. Jsoup.parse()가 모든 새로운 줄을 제거하기 때문에 String에는 새로운 줄이 없습니다. 이것은 해결책입니다'String html = (String) bodyPart.getContent(); 문자열 parsedHtml = Jsoup.parse (html.replaceAll ("(? i)
* *", "br2n")). result = result + result.setProperty ("line.separator") + parsedHtml.replaceAll ("br2n", System.getProperty ("line.separator")); ' –
이 질문을 다른 사용자가 비슷한 문제를 검색하는 데 도움이 자신의 질문에 대한 답변으로 추가하십시오. – Tobias