`
TonySun3544
  • 浏览: 161436 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

将 HTML 文件转换成 XML

    博客分类:
  • XML
阅读更多

在 Java 专家 Michael Geisler 为 Builder 澳大利亚写的第一篇文章中,他向读者展示了如何使用 JTidy 将 HTML 文件转换成 XML。 

有关 Java 的最重要的事情是有很多扩展标准库可以作为标准平台的一部分,而且在那些库中有对 XML 提供了非常多的支持。然而对于某些特定的需要,在标准库中可能没有直接的支持。 

其实你有两个选择: 

1.完全由自己来构建一些东西。这一般很痛苦,而且很费时间。 

2.去“社区”看看是否已经有人遇到了同样的问题(这种情况非常有可能发生),看他是否乐意与你分享他的成果。 
对于这个情况,SourceForge 上有一个非常有用的小项目,叫做 JTidy。JTidy 的Web 站点位于 http://sourceforge.net/projects/jtidy/。 

JTidy 提供 HTML 语法检查和 HTML 的“pretty printing(漂亮打印)”,但是对于你来说,它还允许你将一个 HTML 文件作为输入,然后将其转换成为 XML。JTidy 读取输入文件,然后如果发现有任何不匹配或遗漏的闭合标记,将纠正这些标记,最后输出一个格式良好的 XML 文档。 

从下面的示例代码中可以看到,JTidy 的用法相当简单。简单地将 JTidy 实例设置为输出 XML,提供一个输入 URL,输出文件和错误文件,然后启动转换过程就可以了。 

import java.net.URL;
import java.io.*;
import org.w3c.tidy.Tidy;

public class TestHTML2XML {
	private String url;
	private String outFileName;
	private String errOutFileName;

	public TestHTML2XML(String url, String outFileName, String errOutFileName) {
		this.url = url;
		this.outFileName = outFileName;
		this.errOutFileName = errOutFileName;
	}

	public void convert() {
		URL u;
		BufferedInputStream in;
		FileOutputStream out;

		Tidy tidy = new Tidy();

		// Tell Tidy to convert HTML to XML
		tidy.setXmlOut(true);

		try {
			// Set file for error messages
			tidy.setErrout(new PrintWriter(new FileWriter(errOutFileName), true));
			u = new URL(url);

			// Create input and output streams
			in = new BufferedInputStream(u.openStream());
			out = new FileOutputStream(outFileName);

			// Convert files
			tidy.parse(in, out);

			// Clean up
			in.close();
			out.close();

		} catch (IOException e) {
			System.out.println(this.toString() + e.toString());
		}
	}

	public static void main(String[] args) {
		/*
		 * Parameters are: URL of HTML file Filename of output file Filename of
		 * error file
		 */
		TestHTML2XML t = new TestHTML2XML("http://www.baidu.com",
				"E:\\test.xml", "E:\\error.xml");
		t.convert();
	}
}
 

分享到:
评论

相关推荐

    讲html文件转换成xml文件

    本代码实现了将一个html文件转成xml文件

    使用XSLT将XML文档转换成HTML文档

    最后,我们将使用 JavaScript 语言来将 XML 文档和 XSLT 文件加载到 HTML 文档中,并将其转换成 HTML 文档。 <html> 使用 XSLT 实现 XML 文档到 HTML 文档的转换 function xslt(){ var XMLdocument1 = new ...

    html转换xml代码

    - 原始HTML文件可能使用了不同的字符集(如GB2312),需要将其转换为统一的UTF-8编码,以便后续处理。 2. **Tidy参数的作用**: - 上述参数的设置主要目的是让转换后的文档更加符合XML的标准要求,例如去除某些...

    如何在Java中将XML文档转换成HTML文档.pdf

    XSLT是一种用于转换XML文档的语言,它可以将一个XML文档转换成另一个XML文档或任何其他格式的文档,包括HTML。 ##### 实现步骤详解 1. **导入相关包**:在Java程序中使用XSLT进行转换前,需要导入必要的包,如`...

    http转换xml文件

    本话题主要涉及的是如何将HTTP文件转换为XML文件。HTTP(超文本传输协议)主要用于Web通信,而XML(可扩展标记语言)则是一种结构化数据表示方式,常用于数据交换和存储。下面将详细阐述这一过程,以及VC(Visual ...

    javaxml,xsl,html文件转换.pdf

    通过对 Java 代码的分析,我们可以了解到如何将 XML 文件转换为 HTML 文件,并了解到 XSL 模板的应用。 首先,让我们了解什么是 XML、XSL 和 HTML。XML(Extensible Markup Language)是一种标记语言,用于存储和...

    XML文件批量转换CSV文件工具.rar

    这个“XML文件批量转换CSV文件工具”是一款便捷的应用程序,设计用于将XML格式的数据转换成CSV(Comma Separated Values)格式。CSV是一种通用的、轻量级的文件格式,适合于导入和导出到各种数据分析和电子表格软件...

    xml转换html

    本文将深入探讨XML与HTML之间的转换,以及如何实现这一过程。 XML的特性: 1. 可扩展性:XML允许用户自定义标签,以适应特定领域或应用的需求。 2. 结构化:XML文档基于严格的树形结构,每个元素都有开始标签和结束...

    HTML转换为XML

    2. **SgmlReader与XmlTextWriter的使用**:在示例代码中,`SgmlReader`类被用来读取HTML内容并将其转换成符合XML规范的数据流。它能够处理HTML中的不规范性,如不闭合的标签等,从而使其适合作为XML数据源。`...

    xml的转化成html

    在实验 2 中,我们将学习如何使用 XSL 处理器处理 XML 文件和 XSL 文件,转换输出 HTML 文件。实验步骤如下: 1. 首先,创建一个 XML 文件,例如: ``` <?xml version="1.0" encoding="utf-8"?> <ListTitle>...

    客户端TBL互转XML.rar

    “客户端TBL互转XML.rar”是一个压缩包,包含了一个名为“客户端TBL互转XML.exe”的可执行文件,这个工具可能用于将客户端的TBL文件转换成XML文件。这种转换工具有助于开发者、数据分析师或游戏玩家解析和编辑原本...

    SWHtml2XML

    SWHtml2XML是一款专门用于将HTML文件转换成XML文件的工具。在IT行业中,这种转换有时是必要的,因为XML和HTML虽然都与数据结构和网页内容有关,但它们的用途和格式规范却大不相同。HTML(超文本标记语言)主要用于...

    字符串转换成XML格式工具XmlNotepad-v2.5.rar

    为了解决这一问题,我们引入了一款高效的工具——XmlNotepad v2.5,它能快速将大数据量的字符串转换成XML格式,大大提升了工作效率。 XmlNotepad是由Microsoft开发的一款轻量级的XML编辑器,它具有直观的用户界面和...

    javaxml,xsl,html文件转换[定义].pdf

    Java XML、XSL、HTML 文件转换是软件开发中的一种常见技术,主要用于将 XML 文件转换为 HTML 文件或其他格式的文件。下面将对该技术进行详细介绍。 XML 文件是什么? XML(Extensible Markup Language)是一种...

    跟踪评级PDF转为html,xml的文件

    在IT行业中,转换文件格式是一项常见的任务,特别是对于专业文档如PDF来说,有时我们需要将其转换成其他格式,比如HTML或XML,以便于网络发布、数据提取或者进一步的文本处理。这个压缩包文件“跟踪评级”可能包含了...

    将html转换为XML的控件HtmlAgilityPack

    它能够帮助开发者处理不规则或不标准的HTML代码,将其转换成结构化的XML文档,便于进行进一步的数据提取和处理。在标题中提到的"将html转换为XML的控件",就是指HtmlAgilityPack的核心功能之一。 在描述中提到了...

    纯html标签静态调用xml文件及xsl对xml文件的的显示修饰

    将这个`<link>`标签添加到HTML文件(如a.htm)的`<head>`部分,就可以应用XSL转换规则来美化XML数据的显示。 总结一下,纯HTML静态调用XML文件并利用XSL进行显示修饰的流程包括: 1. 使用`<object>`或`<iframe>`...

    html转xml小工具,包括源码

    5. **性能优化**:对于大量HTML文件的转换,性能优化是关键。这可能涉及缓存重复的元素、避免不必要的内存分配以及使用流式处理等策略。 6. **用户界面(UI)设计**:如果该工具具有图形用户界面,那么我们需要关注...

    将搜狗收藏夹导出的xml文件转换成ie认可的文件

    本文将详细讲解如何将搜狗浏览器导出的XML文件转换为IE浏览器能识别的格式,并将其导入到IE的收藏夹中。 首先,搜狗浏览器提供了导出收藏夹的功能,用户可以通过设置导出收藏夹为XML文件。这个XML文件包含了所有...

    C# CHtmlToWord 将HTML文件转换成word文档!

    "C# CHtmlToWord 将HTML文件转换成word文档!"这个项目提供了一个解决方案,允许开发者通过C#编程语言实现这一功能,而无需在用户计算机上安装Microsoft Word软件。下面将详细介绍这个项目的实现原理、关键技术和...

Global site tag (gtag.js) - Google Analytics