HTML-Dokument parsen
Im Beispiel wird ein HTML-Dokument zu reinem Text konvertiert (naja, lediglich das <br>-Tag wird berücksichtigt):
package com.sowas.javawiki.snippets; import java.io.Reader; import java.io.StringReader; import javax.swing.text.EditorKit; import javax.swing.text.MutableAttributeSet; import javax.swing.text.html.HTML; import javax.swing.text.html.HTMLDocument; import javax.swing.text.html.HTMLEditorKit; public class HtmlToText { public static String getText(String html) { final StringBuffer sb = new StringBuffer(1000); try { // Erstellen eines HTML Dokuments mit Parser: HTMLDocument doc = new HTMLDocument() { public HTMLEditorKit.ParserCallback getReader(int pos) { return new HTMLEditorKit.ParserCallback() { @Override public void handleText(char[] data, int pos) { sb.append(data); } @Override public void handleSimpleTag(HTML.Tag tag, MutableAttributeSet set, int pos) { if (tag.toString().equals("br")) sb.append('\n'); } // Es gibt noch weitere Handler! }; } }; // Den Html-Text parsen: EditorKit kit = new HTMLEditorKit(); Reader rd = new StringReader(html); kit.read(rd, doc, 0); } catch (Exception e) { e.printStackTrace(); } return sb.toString(); } public static void main(String[] args){ System.out.println(getText("<html><body>T<b>e</b>st<br>Test2</body></html>")); } }