1. UTF-8 与 GBK

UTF-8:

  • 允许含 BOM,但通常不含 BOM
  • 用以解决国际上字符的一种多字节编码,
    • 英文:8 bits(1 byte)
    • 中文:24 bits(3 bytes)
  • UTF-8 包含了世界上所有国家需要用到的字符,是国际编码,通用性强;
  • 使用 UTF-8 编码的文本可以在各国支持 UTF-8 字符集的浏览器上显示,
    • 如果使用的是 UTF-8,则外国人的英文 IE 上也能显示中文,无需下载 IE 的中文语言支持包;

GBK

  • 国家标准 GB2312 基础上扩容后兼容 GB2312 的标准。

    • GBK 的文字编码使用双字节。即不论中英,均使用双字节,
    • 为了区分中文,将其最高为都设为 1,
    • GBK 支持所有中文,是国家标准(GB:国标),通用性不如 UTF-8,不过显然 UTF-8 占用的数据库比 GBK 要大,不符合中国国情;

2. 解码歧义与前缀无歧义编码

编码方案确定后,尽管编码结果必然确定,但解码过程和结果却不见得唯一。

解码算法一般采用,按顺序对信息比特流子串匹配的策略,因此为了消除匹配的歧义性,任意两个原始字符所对应的二进制编码串,相互都不得是前缀。

反过来,只要个字符的编码串互不为前缀,则即便出现无法解码的错误,也绝对不致歧义。这类编码就是所谓的“前缀无歧义编码”(prefix-free code),简称 PFC 编码

转载于:https://www.cnblogs.com/mtcnn/p/9423039.html

编码(encode)问题相关推荐

  1. Base64的编码(Encode)与解码(Decode)

    Base64的编码(Encode)与解码(Decode) 推荐第一种 效率更高. 第一种:java8 新版本 @Testpublic void test1(){//现在Base64编码 import ...

  2. Java如何进行Base64的编码(Encode)与解码(Decode)?

    关于base64编码Encode和Decode编码的几种方式 Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Binary资料和字串资料彼此之间是可以互相转换的,十分方便 ...

  3. Python编码encode()与解码decode()介绍与示例演示

    1.编码与解码介绍 位:计算机最小的单位 二进制中的一位 用二进制的 0/1表示. 字节:八位组成一个字节. 字符:我们肉眼可见的文字与符号. 字符集:字符的集合. 编码:将字符转换成计算机可识别的0 ...

  4. python解码函数_python2和python3的编码encode解码decode函数

    python比较坑的一个点:意义完全变了的两个函数 首先 常用的编码方式有3种,utf-8:  常用的传输和存储格式,Unicode的一种简化 Unicode:包括了所有可能字符的国际统一编码 GBK ...

  5. python的decode函数报错_python2和python3的编码encode解码decode函数

    python比较坑的一个点:意义完全变了的两个函数 首先 常用的编码方式有3种,utf-8:  常用的传输和存储格式,Unicode的一种简化 Unicode:包括了所有可能字符的国际统一编码 GBK ...

  6. JavaScript编码encode和decode escape和unescape

    encodeURI() 函数可把字符串作为 URI 进行编码. 语法 encodeURI(URIstring) 参数 描述 URIstring 必需.一个字符串,含有 URI 或其他要编码的文本. 返 ...

  7. python 乱码转码_数据库乱码问题 Python 编码问题(Unicode 的 encode、decode 相互转换 )...

    前言: 今天有个项目需要合并(A合并到B),我所做的就是数据库的合并操作,其中出现的主要问题就是乱码的问题.乱码这个问题是很常见的问题,今天整理了下自己所理解的一点见解. 案例: NAME COMPA ...

  8. 站长在线Python精讲:Python中字符串编码转换encode编码和decode解码详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<Python中字符串编码转换:encode编码和decode解码详解>.本知识点主要内容有:常用编码简介.使用encode( ...

  9. Python学习笔记之编码问题 unicode、encode、decode

    在所有字符集中,最知名的可能要数被称为ASCII的7位字符集了.它是美国标准信息交换代码(American Standard Code for Information Interchange)的缩写, ...

  10. day07-字符编码、文件操作

    目录: 字符编码 文件处理 一.字符编码: #1. 什么是字符编码:将人识别的字符转换计算机能识别的01,转换的规则就是字符编码表 #2. 常用的编码表:ascii.unicode.GBK.Shift ...

最新文章

  1. html5摒弃的标记,5 HTML5的列表标记
  2. 【数学建模】MATLAB应用实战系列(八十二)-【数学建模】非线性多元回归(附MATLAB代码)
  3. 【跃迁之路】【500天】程序员高效学习方法论探索系列(实验阶段257-2018.06.20)...
  4. 再谈 CSS 预处理器
  5. python对象序列化或持久化的方法
  6. .NET Core 从 Github到 Nuget 持续集成、部署
  7. ASP.NET使用Memcached高缓存实例(初级教程)
  8. [结构力学] 铰结三角形规律中虚铰也记为单铰
  9. CCF202109-2 非零段划分(100分)【序列处理】
  10. LeetCode 101对称二叉树
  11. 后缀数组2.0--Height数组(bzoj 1717: [Usaco2006 Dec]Milk Patterns 产奶的模式)
  12. 【SpringMVC学习02】走进SpringMVC的世界
  13. 第十五周 项目一(1)直接插入排序
  14. iOS Xcode:No account for team 5P2U9V6DNN.
  15. 给图片添加文字(换行)水印
  16. 微信小程序游戏「跳一跳」高分秘籍
  17. vba工作表重命名_如何在Excel中重命名工作表选项卡
  18. JSON decoding error: Invalid UTF-8 start byte 0xb6
  19. 文本匹配模型ESIM
  20. PTA 礼尚往来(递推)

热门文章

  1. 抖音提示需要转换为mp4_如何将MP4文件转换为MP3格式?万兴优转帮你轻松完成转换...
  2. linux中bind9源码包安装使用,编译安装bind9
  3. 前端框架-后台模板:Xadmin
  4. java action上传文件_java实现文件上传
  5. batch spring 重复执行_一个3年老javaer竟然连Spring的事务管理都不知道,惊呆了
  6. php preg match x,PHP的preg_match噩梦
  7. toolchain安装教程支持_树莓派安装ESP8266_SDK开发环境
  8. 编辑流程图_如何使用ProcessOn快速绘制一张高颜值流程图?
  9. 同等质量下那种图片格式小_八个PPT图片处理必会的神技巧,帮你轻松做出高质量PPT...
  10. android 模仿instagram的listview,实现Instagram的Material Design概念设计