【问题标题】:Is UTF-8 enough for all common languages?UTF-8 对所有常用语言都足够了吗?
【发布时间】:2011-01-27 04:32:57
【问题描述】:

我只是想在 Django 项目中开发一个翻译应用程序,它使具有某些权限的注册用户能够翻译它出现在最新版本中的每条消息。

我的问题是,我应该为这个翻译应用程序中的数据库表使用什么字符集?似乎某些欧洲语言字符无法以 UTF-8 存储?

【问题讨论】:

  • UTF-8 是 Unicode 的编码方案。所有 unicode 字符都可以用 UTF-8 编写。 “它能够表示 Unicode 标准中的任何字符”en.wikipedia.org/wiki/UTF-8。你在问什么?如果 UTF-8 编码所有 Unicode 字符?
  • 我很好奇...那会是什么欧洲语言字符?

标签: mysql django utf-8


【解决方案1】:

UTF-8 可以用来表示所有的 Unicode,所以它不能让你表达所有的通用语言。它允许您表达所有种语言。

如果某些欧洲字符似乎无法正常工作,那就是编码问题。

【讨论】:

    【解决方案2】:

    似乎某些欧洲语言字符无法以 UTF-8 存储?

    不正确。 UTF-8 可以无限制地存储 任何 字符集,克林贡语除外。 UTF-8 是您实现国际化的一站式服务。如果您遇到字符问题,它们很可能是编码问题,或者在您用于显示数据的字体中缺少对该字符范围的支持(尽管对于欧洲语言字符来说极不可能,但在查看时很常见)欧洲计算机上的印度站点。另请参阅this question)

    如果无法呈现非西方字符集,则可能是用户的内置字体没有覆盖该范围的 UTF-8。

    更新:克林贡语确实不属于official UTF-8

    ConScript Unicode Registry 中列出了一些尚未包含在 Unicode 中的现代发明文字(例如,Tengwar)或由于缺乏实际使用而没有资格包含在 Unicode 中的文字(例如,克林贡语),以及非官方但广泛使用的私人使用区代码分配。

    但是,有一个volunteer project 在私有区域中将代码点 F8D0-F8FF 非正式地分配给了克林贡语。 Gallery of Klingon characters

    【讨论】:

    • 如果有人写了一个包含克林贡字母代码点的 Unicode 附录,这也可以用 UTF-8 表示。或者你可以只使用一个私人使用区域并制作一个映射到这些代码点的字体。
    • @Williham 已经完成了:克林贡语 (F8D0-F8FF) en.wikipedia.org/wiki/ConScript_Unicode_Registry
    猜你喜欢
    • 2017-01-11
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多