版本:v0.7.0
摘要
本文主要介绍了字符编码的各种应用,包括常见的字符编码有哪些类型,常见的各种编码规范和编程语言中对于各种字符编码的支持,常见的各种软件和工具对于字符编码的支持,常见的不同操作系统中对于不同编码的支持。
2015-05-24
修订历史 | ||
---|---|---|
修订 0.7.0 | 2015-05-24 | crl |
|
版权 © 2015 Crifan, http://crifan.com
摘要
关于常见的字符编码的
接着再去看下面的介绍,则就很容易理解了:
目前一些常见的字符编码类型有:
摘要
也可以叫做:字符编码在常见规范和语言中的应用
xml文件中,第一行的内容,就包含了字符编码声明
比如:
<?xml version='1.0' encoding="utf-8"?>
其中指定了编码类型encoding为UTF-8类型。
第三, 字符编码的问题是长期存在的。JSON 用纯文本编码数据, 但是你知道, “不存在纯文本这种东西。” JSON必须以Unicode 编码(UTF-32, UTF-16, 或者默认的, UTF-8)方式存储, RFC 4627的第3节 定义了如何区分使用的是哪种编码。
看起来好像说的是:JSON编码必须是Unicode编码?
有空再去确认。
HTML中是通过charset来声明当前网页所使用的字符编码是何种类型的
最常见的比如:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
其中指定了编码类型charset为UTF-8类型。
Python 2.x中的str和unicode
Python 3.x中的bytes和str
系统默认编码:sys.defencoding??? 是ANSI
-->>导致很多人在使用Python时出现编码错误后,结果去想办法修改sys.defencoding的值
-->>实际上不应该这么做,而应该是搞清楚自己要处理的python文件的编码是什么,然后加上对应的编码声明
详见:
【整理】Python中用encoding声明的文件编码和文件的实际编码之间的关系
【整理】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型
【总结】Python 2.x中常见字符编码和解码方面的错误及其解决办法
更多内容可参考另外一个教程:
Python中有个库,专门用来检测字符串是什么编码的。
在用C#进行网页处理时,网络爬虫抓取得到网页的原始字符串后,需要解码才能得到unicode的字符串
详见:【整理】关于HTML网页源码的字符编码(charset)格式(GB2312,GBK,UTF-8,ISO8859-1等)的解释 | 在路上中的"从原始html中解码为对应的unicode字符串"
Java中第三方库函数可以用来动态地检测字符的编码类型:
详见:java - What is the most accurate encoding detector? - Stack Overflow
目录
摘要
字符编码在常见软件中的应用notepad 支持不多但也有最基本的。这就是别人拿来演示神奇的保存一个词 联通 打开后显示其他字符的奥秘所在
TODO:抽空找到网上流传很广的那个,写一个联还是通,换个编码保持,结果再打开显示出另外一个字的效果
sublime 也可以保存成不同编码,虽然支持的不够多
但是对于及时显示当前文件的编码,支持的不是足够好:
摘要