本文介绍了UTF-8:语言使用多少字节来表示可见字符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有表格或类似的表格来显示当编码为UTF8时,不同语言平均需要多少字节来表示可见字符(字形)?

推荐答案

如果您想要一般的东西,我认为您应该坚持这样做:

  • 英语占用略多于每个字符1个字节(偶尔有非ASCII字符,通常是标点符号或符号嵌入文本)。
  • 大多数其他使用拉丁字母的语言使用的数字略高于1,但如果您期望的数字超过1.5,我会感到惊讶。
  • 使用一些其他脚本(希腊语等)的语言每个字符占用大约2个字节。
  • 东亚语言每个字符占用约3个字节(空格、控制字符和嵌入的ASCII使其占用更少,非BMP占用更多)。

这些都是非常不完整、近似性和非量化的。

如果你需要更定量的东西,我想你必须单独研究每种语言。我怀疑您是否会找到已经适用于多种不同语言的预计算结果。

如果您有一种语言的文本语料库,则很容易计算所需的平均字节数。从Text corpus维基百科页面开始。它至少链接到一个很好的免费提供的英语语料库,也可能有一些其他语言的语料库(我没有通过这些链接来查找)。

顺便说一句,我不建议使用此信息截断数据库字段的长度,因为您(在注释中)指出了您打算这样做。首先,如果您使用由字母组成的语料库来计算出每个字符的预期字节数,您可能会发现该语料库根本不能代表最终进入数据库的短小文本字符串,从而打乱了您的预期。只需获取整个数据库列。大多数结果将比最大长度短得多,如果不是这样,我认为您的优化不值得为节省100个字节左右而进行优化。

这篇关于UTF-8:语言使用多少字节来表示可见字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-18 19:07