Я использую EWS Java API 1.2 для получения электронной почты с сервера. И у меня есть проблема: Я использую свойство, как это:EWS Java API 1.2 - лучший способ проанализировать тело письма
PropertySet itemPropertySet = new PropertySet(BasePropertySet.FirstClassProperties);
itemPropertySet.setRequestedBodyType(BodyType.Text);
...
String body = message.getBody().toString();
В этом примере я получаю тело в виде обычного текста. Но мне нужно сохранить форматирование тела (например, пустые строки). Когда я использую BodyType.HTML, я получаю все html-теги, стили css и т. Д. Каков наилучший способ получить текст сообщения с сохранением форматирования и исключая теги html, стили css и т. Д. Спасибо за ваши ответы!
Обновление с моим решением: Я остановился на this variant. Моя проблема была в пустых строках, так что теперь я обрабатывать BR и P-теги на следующие функции:
public void handleStartTag(Tag t, MutableAttributeSet a, int pos) //To handle Tag.BODY
public void handleSimpleTag(Tag t, MutableAttributeSet a, int pos) //To handle Tag.BR and adding '\n'
public void handleEndTag(Tag t, int pos) //To handle Tag.P (and adding '\n') and Tag.BODY
public void handleText(char[] data, int pos)
[ссылка] (http://stackoverflow.com/questions/18125685/how-do-i-convert-a-formatted-email-into-plain-text-in-java) –