首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UTF8 Bomless vs Cp1252

UTF8 Bomless vs Cp1252
EN

Stack Overflow用户
提问于 2012-06-10 07:09:21
回答 2查看 977关注 0票数 0

从物理字节流的角度来看,对于使用UTF8存储的每个文件,我认为UTF8 bomless与Cp1252完全相同,是真的吗?

EN

回答 2

Stack Overflow用户

发布于 2012-06-10 07:28:14

这绝对不是真的。如果你想让它成为一个真实的陈述,你需要添加“如果我只使用US-ASCII字符”子句。但这是一个巨大的“如果”。如果我们只使用US-ASCII字符,许多编码甚至不会存在。包括UTF-8在内的许多编码都确保所有US-ASCII字符都使用相同的单字节表示形式进行编码。

票数 6
EN

Stack Overflow用户

发布于 2012-06-12 03:12:46

不是的。UTF-8不仅涵盖了更大的字符集,而且码点U+7f以上的任何unicode字符都将在UTF-8中由多个字节编码,在CP-1252中由单个字节编码。CP-1252和ISO-8859-1 (也称为拉丁语-1)之间有更密切的对应关系,但即使它们在小但重要的方面也是不同的。这种差异导致了许多最常见的编码问题。

举个例子,左边的单卷引号由unicode代码点U+2018表示。在CP-1252中,这被编码为字节0x91。这个字符在拉丁文-1中根本不存在,而在UTF-8中,它是由三字节序列0xe28098编码的。

更一般地,可以说拉丁-1和UTF-8是基于unicode的编码,因为所有编码都可以算法地映射到unicode代码点,并且将表示该字符,而CP-1252是非基于unicode的编码。用于表示字符的字节与其unicode代码点之间没有规则的对应关系。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10965228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档