删除重复的xml标头

时间:2009-01-08 12:02:01

标签: xslt htmltidy

html Tidy出于某种原因将此作为输出:

<?xml version="1.0" encoding="utf-16"?>
<?xml version="1.0" encoding="utf-16"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 11 February 2007), see www.w3.org" />
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />

...rest of document

因此有2个xml标头,错误类型(不是UTF-8)。 有没有办法删除第二个标题,将其更改为UTF-8,还删除带有XSL的DOCTYPE?

2 个答案:

答案 0 :(得分:4)

我认为解决原始问题会更好。你使用HTML Tidy库吗?

尝试将output-encoding设置为utf8,将add-xml-decl设置为false。可以通过将doctype属性设置为省略来抑制DOCTYPE节点。

答案 1 :(得分:2)

是。创建一个与您要接受的第一个子元素匹配的模板,然后让它只输出该元素的内容。