【发布时间】:2017-07-26 10:14:16
【问题描述】:
我用 Java 序列化了一个对象,得到了以下 XML:
<?xml version="1.0" encoding="UTF-8"?>
<java version="1.8.0_92" class="java.beans.XMLDecoder">
<object class="...." id="SmartLayout0">
<!-- ... -->
</object>
如您所见,根标签<java> 没有关闭。
在 XML 中不关闭此根标记是否合法? XML 标准是否明确允许这种快捷方式?
【问题讨论】:
-
这是不合法的。如果您使用的是 XMLEncoder,我怀疑您忘记调用 XMLEncoder.close(),我假设它会生成结束标记。
-
@Joe 你没看错,问题是缺少
close(),但由于解析器可以处理这样的XML,我不确定结束标记是否是完全强制性的。