什么是多字节字符集?

2024-02-07

术语“多字节”是指其字符可以(但不必)宽于 1 个字节的字符集(例如 UTF-8),还是指在任何情况下都宽于 1 个字节的字符集(例如 UTF -16) ?换句话说:如果有人谈论多字节字符集,这意味着什么?


该术语含糊不清,但在我的国际化工作中,我们通常避免使用术语“多字节字符集”来指代基于 Unicode 的编码。一般来说,我们仅将这一术语用于具有一个或多个字节来定义每个字符的传统编码方案(不包括每个字符仅需要一个字节的编码)。

通常包括 Shift-jis、jis、euc-jp、euc-kr 以及中文编码。

大多数遗留编码(除了一些例外)都需要某种状态机模型(或者更简单地说,页面交换模型)来处理,并且在文本流中向后移动是复杂且容易出错的。 UTF-8 和 UTF-16 不会遇到此问题,因为 UTF-8 可以使用位掩码进行测试,而 UTF-16 可以针对一系列代理项对进行测试,因此在非病态文档中前后移动可以安全地完成,没有太大的复杂性。

对于泰语和越南语等语言,一些遗留编码具有多字节字符集的一些复杂性,但实际上只是建立在组合字符的基础上,并且通常不与广义术语“多字节”混为一谈。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是多字节字符集? 的相关文章

  • 什么是竞争条件?

    编写多线程应用程序时 最常见的问题之一是竞争条件 我向社区提出的问题是 竞赛条件是什么 你如何检测它们 你如何处理它们 最后 如何防止它们发生 当两个或多个线程可以访问共享数据并且它们试图同时更改它时 就会出现竞争条件 由于线程调度算法可以
  • PHP中如何判断字母是大写还是小写?

    我有 UTF 8 格式的文本 也带有变音符号 并且想检查该文本的第一个字母是大写还是小写 这个怎么做 function starts with upper str chr mb substr str 0 1 UTF 8 return mb
  • 使用 Coldfusion 11 的 CFdirectory,文件名中存在非 ASCII 字符问题

    我有一个类似的问题 ColdFusion CFDirectory 和法语 https stackoverflow com questions 1715632 coldfusion cfdirectory and the french从而没有
  • PHP json_encode json_decode UTF-8

    如何将包含国际字符的 json 编码字符串保存到数据库 然后在浏览器中解析解码后的字符串
  • SQLite 的不区分大小写的 UTF-8 字符串排序规则 (C/C++)

    我正在寻找一种方法 以不区分大小写的方式对 C 中的 UTF 8 字符串进行比较和排序 以便在SQLite 中的自定义排序规则函数 http www sqlite org c3ref create collation html 该方法应该i
  • 检查字符串是否编码为 UTF-8

    function seems utf8 str length strlen str for i 0 i lt length i c ord str i if c lt 0x80 n 0 0bbbbbbb elseif c 0xE0 0xC0
  • 从命令行执行查询时出现 PostgreSQL 编码问题

    我正在尝试执行存储在文件中的 SQL 查询 我正在使用以下命令来执行 psql d DB NAME a f QUERY NAME sql 我在 SQL 文件中有一些非英语文本 例如 执行查询时 数据库中的文本如下所示 我如何执行查询命令行以
  • 本地“关闭”binmode(STDOUT, ":utf8")

    我的脚本开头有以下块 usr bin perl5 w use strict binmode STDIN utf8 binmode STDOUT utf8 binmode STDERR utf8 在某些子程序中 当存在其他编码 来自远程子程序
  • 读取文件时如何从Python中的行分隔符中排除U+2028?

    我有一个 UTF 8 格式的文件 其中某些行包含 U 2028 行分隔符 http www fileformat info info unicode char 2028 index htm http www fileformat info
  • 运行源代码中包含 Unicode 字符的 Python 2.7 代码

    我想运行一个在源代码中包含 unicode utf 8 字符的 Python 源文件 我知道这可以通过添加评论来完成 coding utf 8 在一开始的时候 但是 我希望不使用这种方法来做到这一点 我能想到的一种方法是以转义形式编写 un
  • Android 中 Bitmap 和 Drawable 有什么区别?

    我用谷歌搜索 但找不到任何文章来描述 Android 中 Bitmap 和 Drawable 之间的区别 位图是位图图像的表示 类似于 java awt Image Drawable 是 可以绘制的东西 的抽象 它可能是一个位图 包装为Bi
  • Maven UTF-8编码问题

    当我使用两个不同的项目运行下面的代码时 我得到不同的输出 String myString T rk e Karakter Testi i String value new String myString getBytes UTF 8 Sys
  • php-curl 不支持 url 中的 utf-8

    我正在尝试将 http 请求从我的服务器发送到 php 中的另一台服务器 例如 我发送请求的 URL 包含一些 utf8 字符http www aparat com etc api videoBySearch text http www a
  • 数据库字段中的空白不会被trim()删除

    我在 MySQL 的文本字段的段落开头有一些空格 Using trim var text field 在 PHP 中或TRIM text field MySQL 中的语句绝对不执行任何操作 这个空白可能是什么以及如何通过代码删除它 如果我进
  • 替换非 UTF8 字符

    在 php 中 我需要替换字符串中的所有非 UTF8 字符 然而 并不是通过某种等价物 比如iconv功能与 TRANSLIT 但是由一些选定的角色 例如 or 例如 通常 我希望用户能够看到找到无效字符的位置 我没有找到任何执行此操作的函
  • 编码的 nsdata utf8 json,在 ios 中带有重音字符

    我向网络服务器发出一个发布请求 该服务器用 JSON 回答我 这是响应的标头 Cache Control private Content Length 826 Content Type application json charset ut
  • TCPDF UTF-8 符号未显示

    我使用最新的 TCPDF 版本 5 9 但在编码方面遇到一些奇怪的问题 我需要立陶宛语语言符号 例如 但只能得到其中的一小部分 其他的还是这样 所以我该怎么做 我使用默认的 times 字体 它带有 TCPDF 下载 任何帮助 将不胜感激
  • 如何删除Python字符串的最后一个utf8字符

    我有一个包含 utf 8 编码文本的字符串 我需要删除最后一个 utf 8 字符 到目前为止我做到了 msg msg 1 但这只会删除最后一个字节 只要最后一个字符是 ASCII 代码 它就可以工作 当最后一个字符是多字节字符时 它不再起作
  • 在 MySQL 中存储表情符号的编码问题:如何使用 Prisma ORM 在 NodeJS 中定义字符排序规则?

    亲爱的 Nodejs 专家和数据库专家 我们在 MySQL 数据库中存储表情符号和其他特殊字符时遇到问题 我们使用 Prisma 得到一个错误 这是我们使用的 ORM 参数无法从排序规则 utf8 general ci 转换为 utf8mb
  • 使用 NSString 进行 UTF8 解码

    我是 Objective C 新手 尝试使用以下示例将格式错误的 UTF8 编码 NSString 转换为格式良好的字符串苹果文档 http developer apple com library mac documentation Coc

随机推荐

  • std::string size() 是 O(1) 操作吗?

    std string size 是 O 1 操作吗 我使用的STL实现是VC 中内置的 如果您问 MSVC 的 string size 实现是否具有恒定的复杂性 那么答案是肯定的 但唐 韦克菲尔德 https stackoverflow c
  • Java - 父类正在调用子类的方法?

    抱歉 我对编码还很陌生 可能还没有掌握所有术语 希望您仍然能理解我的问题 我想要得到的输出是 Cost for Parent is 77 77 Cost for Child is 33 33 但是 我得到了这个 Cost for Paren
  • Angular - Prod Build 不生成唯一的哈希值

    Angular 生产构建不会在我的项目中生成唯一的哈希值 以下是构建日志截图 无法在新的 Angular cli 项目中重现此问题 似乎我的项目中存在一些问题 我正在使用角度 6 0 3 下面是 angular json schema no
  • Office 365 Rest API 读取“回复”字段

    我正在使用此处记录的其余 APIhttps msdn microsoft com office office365 APi mail rest operations https msdn microsoft com office offic
  • ARM GCC 生成函数序言

    我提到 ARM 工具链可以生成不同的函数序言 实际上 我看到两个 obj 文件 vmlinux 具有完全不同的函数序言 第一种情况如下所示 push some registers maybe fp lr lr ommited in leaf
  • 如何使用 gganimate 获得完整而不是部分的饼图

    我在制作动画饼图时遇到问题gganimate and ggplot 我每年都想吃普通的馅饼 但我的产量完全不同 您可以使用以下代码查看示例mtcars library ggplot2 library gganimate Some Data
  • 从数据框中选择每第 n 行

    我有一个数据表 想要从中提取每第五行以创建一个新表 有一个命令可以实现这个目的吗 这是我的数据示例 count Idf Nr block 1 1233 B12 2 1233 B12 3 1446 B12 4 1446 B12 5 365 B
  • Ansible 复制与同步

    使用 Ansible Synchronize 与 Copy 模块有何优缺点 据我所知 同步具有复制所具有的所有功能 但速度可能要快得多 因此我正在考虑更改所有内容以使用同步 同步的唯一缺点是需要 rsync 这在 Linux 环境中似乎相当
  • jQuery $(document).ready 函数的缩写形式

    我使用了很多 jQuery 所以我必须不断地输入 document ready函数来放置 jQuery 代码 该函数有更短的形式吗 允许使用以下三种语法 Syntax 1 document ready function Syntax 2 r
  • MySQL WHERE 过程中的条件被忽略

    我正在尝试制定一个带有参数的程序 但是当我在一个WHERE情况就好像从未存在过一样 他们只是被忽视了 DELIMITER DROP PROCEDURE IF EXISTS p CREATE PROCEDURE p IN player TEX
  • WPF如何将mousedown(命令/操作)绑定到标签

    我可以找到很多到按钮的命令鼠标绑定 但是如果我想将 mousedown 事件绑定到绑定 MVVM 模式 怎么办 我找不到答案 可能是我看不到的很小的东西 但有人可以帮助我吗 xaml
  • SQL Server 2008 R2 中的高效分页

    我想编写一个执行以下操作的存储过程 返回匹配查询的记录数 以确定向用户显示的页数 返回另一个记录集 其中包含当前页面查询中的某个记录子集 从我在 StackOverflow 上发现的另一个问题 抱歉 我丢失了链接 我发现我们是这样进行分页的
  • 在哪里可以找到有关 SharePoint 的优质编程资源? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我一直试图找到一本书籍或 Web 参考资料 让我更好地了解如何构建 测试 ASP NET 页面 控件和 Web 部件并将其部署到 Shar
  • 防止移动 unique_ptr C++11

    有什么方法可以阻止用户显式获取唯一指针的所有权 std move Make it const The unique ptr移动构造函数需要一个非常量右值引用 因此不能用 a 调用const object const unique ptr
  • Django ORM 中 select_lated 和 prefetch_lated 有什么区别?

    在 Django 文档中 select related https docs djangoproject com en stable ref models querysets select related 遵循 外键关系 在执行查询时选择其
  • 在 Python 中缩小和合并 PDF

    我正在尝试将两个 A4 PDF 页面缩小并合并为一个 A4 页面 这样如果我有的话 p1 p2 我会得到 p1 p2 作为一个新的 PDF 其中一页有两个 A5 大小的页面 类似于在纸上每页打印两页的方式 我调查过pypdf https p
  • 当文本框中未填充任何内容时,将 mvvm WPF 中的属性设置为 null

    我实现了一个文本框 它绑定到一个视图模型 例如 我在文本框中默认填写 100 但如果我将其更改为 10 则该属性始终设置正确 但是当我删除所有数字时 我希望该属性设置为空 但它只是在没有填写任何内容时不设置该值 他只是保留最后一个值 这是我
  • Django 从数据库自动完成

    我有一个这样的模型 class Baslik models Model user models ForeignKey User null True blank True title models CharField max length 5
  • 为什么 getenv() 返回非常量字符串

    我正在阅读以下文档std getenv 功能于cppreference com http en cppreference com w cpp utility program getenv它说 修改 getenv 返回的字符串会调用未定义的行
  • 什么是多字节字符集?

    术语 多字节 是指其字符可以 但不必 宽于 1 个字节的字符集 例如 UTF 8 还是指在任何情况下都宽于 1 个字节的字符集 例如 UTF 16 换句话说 如果有人谈论多字节字符集 这意味着什么 该术语含糊不清 但在我的国际化工作中 我们