C.UTF-8、en_US.UTF-8、zh_CN.UTF-8 有什么区别呢?

好像在 中文输入、显示方面,locale设置为这3者任一个,看不出来有什么区别?

什么情况下是必须设置为:zh_CN.UTF-8 呢?能举例说明下吗?

补充:2023-05-25
找到一篇对locale讲解比较清晰的文章(也是转载,原文已经打不开了):[https://www.cnblogs.com/LCcnblogs/p/6208110.html]

除了locale所表达的 语言_地区的各种习惯用法的区别以外,
对于字符编码来说,似乎不论设置en_US.UTF-8、或者zh_CN.UTF-8,
都不影响 中文简体、繁体、日文、俄文等UTF-8字符集的输入、以及显示,(这容易理解)。

唯独奇怪的是 C.UTF-8,名字上虽然写着的“UTF-8”,但除ASCII以外的字符统统显示成乱码了

阅读 10.1k
1 个回答

这三个都是常见的编码格式:

  • C.UTF-8 字符集,是C语言的默认字符集。
  • en_US.UTF-8 是英文的 UTF-8 编码,支持英文及其他拉丁字母语种,以及特殊符号等字符。该字符集可以在 Unix/Linux 和 MacOS 等操作系统上使用,并兼容 C.UTF-8 。
  • zh_CN.UTF-8 是中文UTF-8 编码。它主要支持汉字、拼音、符号以及少量英文单词。中文系统在 Linux/Unix 系统上会默认安装该编码。
    zh_CN.UTF-8 用于中文的应用程序、网站, 显示中文用这个更好兼容
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏