2013-03-14 89 views
1

如何強制使用XML :: LibXML文本節點中的實體編碼?Perl LibXML編碼實體

我對的toString()輸出

<test>&lt;text&gt;&amp;"&lt;/text&gt;</test> 

,我需要

<test>&lt;text&gt;&amp;&quot;&lt;/text&gt;</test> 

回答

2

您需要使用XML::Entities來對字符串進行編碼。

在這種情況下,您將不得不首先解碼字符串,否則最終會出現已存在的實體進行雙重編碼。

+0

@ikegami:對。我沒有注意到新編碼的字符是什麼。 – Borodin 2013-03-14 22:14:11

1

我不知道爲什麼你要因爲這兩個XML片段是等價的100%。

與't'和'.'相比,libxml不會不必要地使用'"'的實體。