我正在生成一个大型的Xhtml文件。当使用notepad++打开文件时,它说我的文件中有一个实体引用循环。该文件大约为20K行,并在以下几行中给出了这些错误:
<p class='tbl__description'>
ärzaweqt;äöô
éîÄêÿ
Ö¥£ú
</p>
有人知道这个“在线XML解析错误.-检测到实体引用循环”意味着什么吗?当文件变小时,它似乎不会弹出.只有当它包含大量这些实体引用时。
发布于 2015-06-01 08:55:13
&name;things是实体引用。
XML (因此XHTML与它一起使用)功能太丰富,对您来说通常是好的。
如"十亿笑攻击应该在C#起作用吗?“所示,您可以定义自己的实体,并在其他实体定义中重用这些实体。我猜XML解析器试图检测这些漏洞,并在解析实体时检查其内存使用情况。你的例子充满了它们,但我没有看到一个循环。
看起来notepad++使用了TinyXml,也许您可以发现这个错误是在哪里引发的。
sidenote:有关序列化格式特性的更多示例,请参见toys序列化格式不是玩具- PyCon 2015,您可以使用这些特性来拍摄自己的脚。
发布于 2018-01-24 03:53:25
可能您的文档是以ansi编码保存的。您必须在utf-8中转换它以避免此错误。命名实体将根据实体定义被解析为utf-8字符。有些utf-8字符必须更改为实体,以保存在ansi编码。那是禁止的回路!
https://stackoverflow.com/questions/30578456
复制