package org.appwork.utils.formatter; import java.io.IOException; import java.io.Reader; import java.io.StringReader; import javax.swing.text.html.HTMLEditorKit; import javax.swing.text.html.parser.ParserDelegator; public class HTML2PlainConverter { private static class HtmlParser extends HTMLEditorKit.ParserCallback { StringBuffer s = null; public HtmlParser() { } public String getText() { return s.toString(); } @Override public void handleText(final char[] text, final int pos) { s.append(text); s.append("\n"); } public void parse(final Reader in) throws IOException { s = new StringBuffer(); final ParserDelegator delegator = new ParserDelegator(); delegator.parse(in, this, Boolean.TRUE); } } /** * @param text */ public static String convert(final String text) { final HtmlParser parser = new HtmlParser(); try { parser.parse(new StringReader(text)); } catch (final IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return parser.getText(); } }