它实际上有什么作用?根据我的基本理解,XML 只是一种格式化文本。所以不涉及二进制文本转换。
我高度怀疑 UTF-8 和 ASCII 编码之间的唯一区别是 ASCII 编码会将所有非 ASCII 字符转换为 XML 实体(而不是仅保留 XML 字符),从而使 XML 编写器更加努力。因此,ASCII 编码的 XML 仍然可以包含 UTF-8 字符,只是它会稍微长一些、丑一些。
或者说它还有其他的功能吗?
Update:
我完全理解如何通过编码将单个字符转换为字节。然而,XML 只是文本标记,根本没有这样做。
真正的问题是为什么 XML 编码值存储在 XML 中?或者在什么情况下 XML 阅读器需要知道任何特定 XML 文档使用了哪种编码?
请参阅 XML 规范中的附录 F,“自动检测字符编码 http://www.w3.org/TR/xml/#sec-guessing".
特别是,“XML 编码值存储在 XML 中”,因为默认情况下,在没有在 XML 文档外部找到外部元数据的情况下,XML 处理器必须假定内容采用 UTF-16 或 UTF-8 格式。 XML 声明是为不存在此类元数据的情况而设计的。
XML 处理编码的另一个优点是,通过这种方式,XML 处理器
只需支持两种编码,即 UTF-8 和 UTF-16。如果处理器发现,
在外部元数据或 XML 声明中,文档采用编码
它不支持,它可能会比继续读取文档(长
声明后)并遇到意外的编码字节序列
使用依赖于实现的启发式检测。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)