JAVA 富文本转纯文本
import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; import javax.swing.text.html.HTMLEditorKit; import javax.swing.text.html.parser.ParserDelegator; public class Html2Text extends HTMLEditorKit.ParserCallback { private static Html2Text html2Text = new Html2Text(); StringBuffer s; public Html2Text() { } public void parse(String str) throws IOException { InputStream iin = new ByteArrayInputStream(str.getBytes()); Reader in = new InputStreamReader(iin); s = new StringBuffer(); ParserDelegator delegator = new ParserDelegator(); // the third parameter is TRUE to ignore charset directive delegator.parse(in, this, Boolean.TRUE); iin.close(); in.close(); } public void handleText(char[] text, int pos) { s.append(text); } public String getText() { return s.toString(); } public static String getContent(String str) { try { html2Text.parse(str); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return html2Text.getText(); } }
使用
String text = Html2Text.getContent("你的富文本字符串");
说明
网上有很多用字符串替换,或者正则表达式,都不是很理想;这个是最理想的一个
转载:https://blog.csdn.net/qq_44309969/article/details/122369458
带着疑问去思考,然后串联,进而归纳总结,不断追问自己,进行自我辩证,像侦查嫌疑案件一样看待技术问题,漆黑的街道,你我一起寻找线索,你就是技术界大侦探福尔摩斯