【发布时间】:2011-11-25 10:13:06
【问题描述】:
它实际上是做什么的?在我非常基本的理解水平上,XML 只是一个格式化的文本。所以不涉及二进制文本转换。
我高度怀疑 UTF-8 和 ASCII 编码之间的唯一区别是 ASCII 编码通过将所有非 ASCII 字符转换为 XML 实体而不是仅保留 XML 字符,从而使 XML 编写器更加工作。所以 ASCII 编码的 XML 仍然可以包含 UTF-8 字符,只是它会更长更丑。
或者还有其他的功能吗?
更新:
我完全理解单个字符如何通过编码转换为字节。然而,XML 只是文本标记,绝不会这样做。
问题真的是为什么XML编码值存储在XML中?或者在什么情况下 XML 阅读器需要知道任何特定 XML 文档使用了哪种编码?
【问题讨论】:
-
没有“UTF-8 字符”之类的东西。您可能是指非 ASCII Unicode 字符。声明的原因是有很多不同的编码,比如 windows-1250 或 latin-2。 UTF-8 和 ASCII 不是仅有的两个选项。
-
好的,但是为什么 XML 声明首先需要编码?
-
因为当你想读取文件,例如显示给用户时,你需要知道如何将字节解码为字符。
标签: xml