我使用Perl创建XML文件,然后使用
use XML::LibXML;
在代码的一部分中,我需要通过
在一个节点中编写一些解释$writer->characters("<![CDATA[$xmlFile]]>");
我的输出是
<![CDATA[example.xml]]>
但期望的是
<![CDATA[example.xml]]>
我已经检查了<
和>
,但它根本不起作用。因为它再次代替符号&
,所以它也打印出编码。
有没有人知道如何过来?
答案 0 :(得分:2)
请勿尝试使用characters
直接写入CDATA部分;它生成文本,而不是元素,而不是CDATA部分,PI或注释等特殊结构。相反(假设$writer
是XML::Writer
),您可以执行$writer->cdata($xmlFile)
。