import java.util.HashSet; import java.util.Set; import javax.swing.text.html.HTMLEditorKit; import org.apache.commons.lang.StringEscapeUtils; import org.htmlparser.Node; import org.htmlparser.NodeFilter; import org.htmlparser.Parser; import org.htmlparser.util.NodeList; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.richart.Constants; import com.richart.util.StringUtils; public class HtmlToText extends HTMLEditorKit.ParserCallback { private static Logger logger = LoggerFactory.getLogger(HtmlToText.class); /** * 提取纯文本 * * @param inputHtml * @return * @throws Exception */ public static String extractText(String inputHtml) { StringBuffer text = new StringBuffer(); Parser parser = null; NodeList nodes = null; Set<String> set = new HashSet<String>(); try { String htmlStr = new String(inputHtml.getBytes(Constants.CODING_UTF_8), Constants.CODING_UTF_8); htmlStr = StringEscapeUtils.unescapeHtml(inputHtml); parser = Parser.createParser(new String(htmlStr), Constants.CODING_UTF_8); // 遍历所有的节点 nodes = parser.extractAllNodesThatMatch(new NodeFilter() { private static final long serialVersionUID = 1L; public boolean accept(Node node) { return true; } }); for (int i = 0; i < nodes.size(); i++) { Node nodet = nodes.elementAt(i); String noteStr = new String(nodet.toPlainTextString().getBytes(Constants.CODING_UTF_8)).trim(); if (StringUtils.isValidateString(noteStr) && set.add(noteStr)) { text.append(new String(noteStr)).append("<br />"); } } } catch (Exception e) { logger.error(e.getMessage(), e); } return text.toString().replaceAll("[[\r]+[\n]+[\t]+]+", "<br />"); }
未处理的问题:特殊字符乱码问题,内容重复
相关推荐
总的来说,C#实现将HTML转换成纯文本的方法主要是通过解析HTML字符串,识别标签并应用预定义的转换规则,同时忽略特定的HTML标签,从而得到不含HTML标记的纯文本内容。这样的方法在处理大量HTML数据时,能有效地提取...
标题 "超文本转换成纯文本" 指的是将HTML(HyperText Markup Language)文档转换为纯文本(Plain Text)的过程。在IT领域,这种转换非常常见,因为有时我们需要提取网页上的文字信息,而忽略其格式和样式。这在数据...
lang和lang3这两个包里有转换所需的工具类 org.jsoup jsoup 1.11.3 commons-lang commons-lang 2.6 org.apache.commons commons-lang3 3.4 第二步:直接使用即可: import org.apache.commons.lang....
要将HTML转换为纯文本,我们需要利用TWebBrowser的Document属性,它返回一个IDocument接口,可以访问HTML文档的结构。具体步骤如下: 1. **创建Delphi工程**:在Delphi集成开发环境中新建一个VCL Forms应用程序,并...
VB可以用于编写HTTP请求,抓取网页内容,然后对这些内容进行处理,如将HTML转换为纯文本。 在压缩包子文件的文件名称列表中,我们可以看到以下文件: 1. `frmMain.frm`:这是VB中的表单(Form)文件,包含用户界面...
在Java编程中,将HTML字符串转换为纯文本字符串是一个常见的需求,这主要涉及到解析HTML文档并提取其中的文本内容。HTML是一种标记语言,用于构建网页结构,而纯文本则只包含可读字符,不含有任何格式化或结构信息。...
标题中的“Ruby-AutoHtml”指的是一个Ruby编程语言的库,它的主要功能是将纯文本内容自动转换为HTML格式。这个库提供了一组强大的过滤器,可以解析文本中的链接、图片、视频等元素,并将其转化为相应的HTML标记,...
它能够将HTML字符串转换为小程序可以处理的结构,进而实现富文本的正确展示。wxParse插件通过解析HTML标签,将其转化为小程序组件,如、等,同时处理样式和内联事件,确保内容在小程序中能正常显示和交互。 使用...
对于更复杂的HTML,需要使用第三方库来解析整个HTML文档,提取出纯文本内容。 2. **字符串到NSAttributedString的转换**: iOS提供了`NSAttributedString`的`initWithData:options:documentAttributes:error:`方法...
在Java中轻松将HTML格式文本转换为纯文本的方法示例(保留换行) 在Java中轻松将HTML格式文本转换为纯文本是一项常见的需求,例如在爬虫、文本处理、数据分析等领域都需要将HTML格式文本转换为纯文本。为满足这个需求...
asp中去掉所有HTML标记得到纯文本代码,并截取字符串。适用于做企业网站时,首页显示公司简介的一部分内容用...
在本教程中,我们将探讨如何使用Python将纯文本文件转换为HTML格式。这个过程涉及到几个关键的概念和技术,包括标准输入(sys.stdin)、生成器(yield)以及正则表达式。 首先,让我们详细解释一下`sys.stdin`。`...
在IT领域,特别是Web开发中,将纯文本转换为Web页面是一项常见的需求,尤其是在处理大量非结构化数据时。本文将深入探讨如何使用PHP这一流行的脚本语言来实现这一目标,基于给定的文件信息:“用PHP自动把纯文本转换...
本篇将详细讲解如何使用Python将EPUB文件转换为纯文本,这对于文本挖掘、数据分析或者简单的阅读体验优化都非常有用。 EPUB是一种开放标准的电子书格式,它允许内容以结构化的方式存储,包括HTML、CSS、图像和其他...
在某些情况下,我们需要将HTML内容转换成纯文本,例如为了邮件发送、数据分析或者存档等目的。转换过程需要处理HTML的各种元素,包括标签、属性、样式以及特殊字符。本文将深入探讨HTML转换成文本的原理、方法以及在...
这些工具通常能够解析CHM文件的内部结构,提取出HTML内容,并将其转化为纯文本格式。例如,"chm转txt"可能就是这样一个工具,它可以方便地完成这个过程。 3. 转换过程: - 首先,下载并安装转换工具。确保工具是...
html2text-lib 用于将 HTML 转换为纯文本的 C++ 库。 起源 该库基于应用程序 html2text: ://www.aaronsw.com/2002/html2text/ ##去做 创建一些示例和文档。
"html转换成text"这个过程主要涉及到以下几个关键技术点: 1. **HTML解析**:首先,我们需要解析HTML文档,理解其结构和元素。这通常通过HTML解析器来完成,如Python的BeautifulSoup库或Java的Jsoup库。解析器能够...
auto_html, 将纯文本转换为HTML代码的过滤器集合 AutoHtmlAutoHtml是将纯文本转换为HTML代码的过滤器集合。安装将此行添加到你的应用程序的Gemfile中:gem 'auto_html'然后执行:$ bundle或者将它的自己安装为: