我正在使用JDOM。我想不出一个解决方案,它本质上应该是一个简单的问题。如何将XHTML插入到XML中
我有一个有效的XHTML字符串:
<b>M&A</b> €
如何插入XML DOM如下呢?
<parentNode>
<b>M&A</b>
€
</parentNode>
(这个XML然后熄灭一个XSL转换,然后呈现XHTML的浏览器)
我来了用以下“伪”解决方案,但我不确定它们是否可能:
不是XML实体的Unescape实体,然后插入。
Reinscape只有XML entites,然后HTML unescape整个字符串,然后插入。
塔拉斯
这就是我最终做的: *解析输入XHTML片段作为HTML到使用JTidy 一个DOM *使用XPath(/ HTML /体/节点())提取物体的所有子节点 *插入提取节点到目标XML DOM 唯一需要注意的是'是一个有效的XHTML实体,但不是有效的HTML实体。这意味着第一步不会将序列看作是:'作为撇号,而是作为6个单独的字符。我通过用数字引用替换'的所有实例来解决这个问题(一个黑客的位,但它的工作原理) – Taras 2009-06-14 12:16:12
我确信有一种方法可以告诉JTidy将所有命名实体引用替换为已编号的实体引用。在命令行上这是“-n”。还有一个开关使它产生有效的XML。我认为Java库可以做同样的事情。 – Tomalak 2009-06-14 12:27:02