在HTML文档上添加结束标记的简便方法,以便可以应用XSLT

时间:2016-07-25 15:15:26

标签: java html xml xslt

我正在开发一个系统,我需要通过XSLT转换传递一些HMTL,但HTML有一些标题标签没有关闭标签,所以它在技术上并不是很好的形式& #34;能够应用XSLT。以下是标签:

  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=9">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="bootstrap.min.css">
  <link rel="stylesheet" href="smartdoc.css">

以下是问题,我正在处理的文档被下载到服务器,因此我无法直接访问简单地打开文件,例如记事本,并手动关闭标记。关闭这些标签的最佳方法是什么,以便我可以在它们上使用XSLT?注意我使用Java库来运行XSLT转换,因此在应用XSLT之前我可能会使用Java中的某些东西来编辑HTML,但我不确定要使用什么。

2 个答案:

答案 0 :(得分:1)

您可以使用名为HTML TidyJTidy Java版本来清理HTML。

JTidy How To Page显示了API的使用示例:

Tidy tidy = new Tidy(); // obtain a new Tidy instance
tidy.setXHTML(boolean xhtml); // set desired config options using tidy setters 
...                           // (equivalent to command line options)

tidy.parse(inputStream, System.out); // run tidy, providing an input and 
                                     // output stream

答案 1 :(得分:0)

我使用tagsoup 顺便说一句,看一下这个帖子:What are the pros and cons of the leading Java HTML parsers? [closed]