utf8 vs. utf-8 vs. UTF8 vs. UTF-8 有啥不同的地方吗? [关闭]

Posted

技术标签:

【中文标题】utf8 vs. utf-8 vs. UTF8 vs. UTF-8 有啥不同的地方吗? [关闭]【英文标题】:Are there any places where utf8 vs. utf-8 vs. UTF8 vs. UTF-8 makes a difference? [closed]utf8 vs. utf-8 vs. UTF8 vs. UTF-8 有什么不同的地方吗? [关闭] 【发布时间】:2012-02-25 09:43:56 【问题描述】:

在许多不同代码环境的官方文档中,我看到 UTF-8 表示为大写或小写,也有带或不带破折号。有没有哪一个地方很重要?

可以找到这些字符串的一些地方包括:

有关 header() 参数(HTTP 标头)的 php 手册 关于 PHP 函数参数的 PHP 手册 关于内部配置的 PHP 手册 mysql 配置参考手册 Python 2 代码编码声明 Bash 语言环境配置 html 元标记 XML 文档类型

【问题讨论】:

【参考方案1】:

这确实是天壤之别。一个地方只接受一种形式;对方只会接受对方。

在此处列出正确的列表在哪种情况下不是一个好主意 - 这将是一个庞大且毫无意义的开放式列表。只需始终在相应的文档中查找特定情况下接受哪些表格即可。

【讨论】:

@David 为什么呢?除了它确实是一个非建设性的边缘问题之外 - 这是我能想到的唯一答案。 谢谢。我确实看到有些地方需要一种形式,另一些地方需要另一种形式,而且大多数都是宽容的。我最感兴趣的是了解不宽容的地方! @dotancohen 只需查看文档即可。将其作为 Stack Overflow 问题提出并没有真正意义。这将是一个完全无用的列表,没有实际用途。 @dotan ...当然,除非您有此类列表的实际用例。但我真的想不出一个有效的。 @Pekka:这正是我发布这个问题的原因!了解异常在哪里。【参考方案2】:

官方registry of encodings 将名称定义为不区分大小写,拼写为 UTF-8(UTF8 甚至不是有效的别名)。任何可以处理 UTF-8 的软件都不太可能识别 UTF-8 这个名称。所以在所有地方,使用 UTF-8 而不是 UTF8 很重要。

由于名称不区分大小写,因此文档可以使用任何大小写。对它们施加大小写限制的软件将被严重破坏,我不明白为什么会假设存在这样的软件。文档的变化并不意味着必须使用某些特定的字母大小写。

【讨论】:

"UTF8" 在 python .encode() 中工作正常。所以在“所有地方”并不那么重要 mySQL 不接受带有破折号的UTF-8。它需要utf8(但不区分大小写) 谢谢!这正是我需要知道的!

以上是关于utf8 vs. utf-8 vs. UTF8 vs. UTF-8 有啥不同的地方吗? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

cocos2dx --- VS 使用utf8 编码问题

VS调试:字符串中的字符无效

VS2010 GTK中文乱码解决

python-整理-vs2013新建文件编码

mysql数据库备注乱码?跪求解答?

utf-8和utf8的区别