• Windows:默认为 ANSI,记事本程序另存为处,可以设置其他编码格式;
  • Ubuntu:默认为 UTF-8

1. ANSI

ANSI 编码表示英文字符时用一个字节,表示中文用两个或四个字节 —— 这带来了存储空间的减少,但却带来的格式的不统一和混乱;

ANSI是一种字符代码,为使计算机支持更多语言,通常使用 0x00~0x79 范围的 1 个字节来表示 1 个英文字符。超出此范围的使用 0x80~0xFFFF来编码,即扩展的 ASCII 编码

为使计算机支持更多语言,通常使用 0x80~0xFFFF 范围的 2 个字节来表示 1 个字符。比如:汉字 ‘中’ 在中文操作系统中,使用 [0xD6,0xD0] 这两个字节存储。

不同的国家和地区制定了不同的标准,由此产生了 GB2312、GBK、GB18030、Big5、Shift_JIS 等各自的编码标准。这些使用多个字节来代表一个字符的各种汉字延伸编码方式,称为 ANSI 编码

  • 在简体中文 Windows 操作系统中,ANSI 编码代表 GBK 编码;
  • 在繁体中文 Windows 操作系统中,ANSI 编码代表 Big5;
  • 在日文 Windows 操作系统中,ANSI 编码代表 Shift_JIS 编码;

2. café分别在 utf-8cp1252下的编码形式

How to fix: “UnicodeDecodeError: ‘ascii’ codec can’t decode byte”

>> 'é'.encode('cp1252')
b'\xe9'
>> 'é'.encode('utf-8')
b'\xc3\xa9'# 通过何种形式的编码(encode),便继续通过该形式解码(decode)
>> 'café'.encode('cp1252').decode('cp1252')
'café'
>> 'café'.encode('utf-8').decode('utf-8')
'café'

字符串café被编码为 utf-8还是cp1252,可通过某位数字判断。前三位字符caf是简单的 ascii。

  • utf-8 下,é使用两个字节进行编码;
  • cp1252 下,é is 0xE9;

编码格式(UTF-8 与 ANSI)各种编码解码(encode、decode)相关推荐

  1. 编码解码问题.decode(encoding='gbk', errors='ignore')

    编码解码问题 在一次请求一个网页的过程中,遇到一个问题,代码如下: 这是解决了问题之后的代码 import urllib.requestheaders={'User-Agent':'Mozilla/5 ...

  2. 64位编码译码 encode decode

    64位编译反编译 ,js编译也可用后台解除.用于传值特殊符号造成的问题 public static string Base64Encode(string plainText) { var plainT ...

  3. js base64 编码解码

    js base64 编码解码 encode decode,可以直接使用 function Base64() {// private property_keyStr = "ABCDEFGHIJ ...

  4. python 编码 解码 读写文件

    python基础语法6 编码解码 encode编码与decode解码 读写文件 编码解码 计算机是以二进制(0或1)存储的,以字节为单位,1byte=8bit,1KB=1024B:1MB=1024KB ...

  5. C语言实现Base64编码解码

    C语言实现Base64编码解码 Encode static const char base[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqr ...

  6. utf 8转ansi乱码_为什么#AskObama推文在屏幕上显示乱码:了解您的UTF-8,Unicode,ASCII和ANSI解码主席先生

    utf 8转ansi乱码 UPDATE: The contractor/vendor that made the software commented on Hacker News with more ...

  7. python--字符/文本编码解码笔记

    字符/文本编码解码笔记 1.字符问题 编码和解码 2.字节概要 3.基本的编解码器 编码类型史 字符编码 ASCII码 GB2312以及其他编码 UNICODE标准编码 UTF-8编码 4.了解编解码 ...

  8. python3 转码的函数_python基础3之文件操作、字符编码解码、函数介绍

    内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: 1 #/usr/bin/e ...

  9. openssl算法 —— 利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密

    openssl 加密字符串的方法: 一.利用openssl命令进行BASE64编码解码(base64 encode/decode): 1. BASE64编码命令 对字符串'abc'进行base64编码 ...

最新文章

  1. 架构思维-高业务复杂度系统建设思路
  2. 掌握图神经网络GNN基本,看这篇文章就够了
  3. hdu3594 强连通 tarjan
  4. stl 基于哈希的map c++_【C++】一文带你入门 STL
  5. 更便捷:阿里云DCDN离线日志转存全新升级
  6. PHP文件系统-文件下载
  7. android 获取键盘回车键事件,设置软键盘回车键显示内容,点击空白处隐藏软键盘
  8. Zookeeper的一些Bugs
  9. iOS 本地推送以及自定义推送声音
  10. 未能加载文件或程序集或它的某一个依赖项。参数不正确
  11. 基于SSM和Vue的旅游网和旅游管理系统
  12. STM32合并烧录IAP+APP
  13. c语言做贪吃蛇怎么记住成绩,用C语言编写贪吃蛇的思路是怎样的?
  14. Asp.net 使用weboffice实现Word在线编辑
  15. LAYA_展示富文本
  16. js jsp 文件是什么?
  17. ZigBee学习笔记——(三)ZigBee无线传感器网络通信标准
  18. Qt学习 第22节:Qcolor 中的Alpha不透明度
  19. 解决时间插件mobiscroll在使用过程中的一个小缺陷
  20. aardio - 【库】扩展函数库

热门文章

  1. 8个jQuery Mobile基础教程
  2. android程序数据迁移sd,Android将项目中的数据库复制到SD
  3. PHP textarea防止拖动,textarea dom元素 防止滚动冒泡
  4. 计算机网络-自顶向下方法(7th) 第四章 Review Questions 英文题目
  5. C语言如何依次读取字符,C中的字符串,如何获取subString
  6. 第八届蓝桥杯第七题日期问题
  7. 第八届蓝桥杯第一题购物单
  8. Python数据结构实战——单向链表(LinkedList)
  9. 本地连接远程代码库——生成公钥SSH Key(Linux版)
  10. explain mysql ref_MySQL explain详解