XML文件编码格式“utf-8”和“UTF-8”的区别是什么?

39

将XML文件转换为ASCII时,utfUTF三个字符的用户值不同。

<?xml version="1.0" encoding="utf-8"?>


<?xml version="1.0" encoding="UTF-8"?>

我尝试使用VS2005创建一个新的XML文件。生成的文件默认为utf-8格式。

哪个是更标准的定义?谢谢。


3
由于小写字母更常见,因此在压缩时,utf-8可能会占用略少一些的空间。 - Zaz
@Zaz 是的,小写压缩效果更好 https://encode.ru/threads/1889-gzthermal-pseudo-thermal-view-of-Gzip-Deflate-compression-efficiency - Volker E.
5个回答

44

@dan04。我想将您的回复标记为答案。感谢提供有用的链接。@所有人,因为我需要将整个XML文件转换为ASCII格式并比较ASCII正文...这就是为什么我关心大小写字母。谢谢大家。 - Nano HE
2
此外,谷歌搜索“charset utf-8 uppercase|lowercase bug|solved”会出现相当多的错误报告,这些错误报告通过使用大写的UTF-8得到了解决/规避,而我在搜索这个主题的一个晚上内没有发现任何报告可以通过将大写改为小写来解决问题。受影响的软件包括Apache xerces(MacOS X)、jsp、jetty(破坏AWS S3签名,请参见:https://github.com/golang/go/issues/19430)和其他许多软件。基于这一点,可以认为大写的UTF-8字符集具有更好的兼容性(特别是与旧工具)。 - GitaarLAB
我确认使用UTF-8(大写)。当在MVC CORE 3.1中使用小写字符时,我得到了错误的编码结果... - Miroslav Siska

17

根据XML规范:

"XML处理器应该以不区分大小写的方式匹配字符编码名称"

这表明您可以使用大写或小写甚至混合大小写,如果您愿意。然而,规范在所有示例中都使用“UTF-8”,为了保持一致性,建议使用它。


16

7
在我的经验中(主要是.NET),字符集标识符被视为大小写不敏感,因此UTF-8utf-8,以及Utf-8或任何其他变体都表示相同的含义。对于其他字符集,例如ISO-8859-1(Latin 1)等,情况也是如此。大小写不应该有影响,因为大小写在这种标识符中并不是一个重要的因素。
我在多个平台上广泛使用Web服务,并且从未见过使用“标准”形式的情况。我曾看到各种各样的字符集变体...甚至来自单个业务合作伙伴的不同变体。

6

大写字母是事实上的标准。但是使用任何大小写组合都应该可以工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接