字符集其实很简单
字符集其实是个很简单的东西,但很多人当时看懂了,过了就忘了。 本篇文章的目的就是,不一定要把字符集的知识讲的有多深,但是一定要在工作上够用。 并且记得足够牢足够久。 工作中遇到的“词汇”,主要是ASCII、GB2312、GBK、Unicode、UTF-8,还有URL Encode、URL Escape。 编码和解码编码,encode。 解码,decode。 编码,编成计算机能懂的码,二进制。 解码,解成人类能读懂的码,人语言。 想让计算机懂,你得编它。 想让人类能懂,你得解释。 字符代码和字符编码字符代码就是序号,比如65。 字符编码二进制序列,比如01000001。 由于基本相同,所以我们平时就忽略了差异。 差异体现在哪呢?UTF-8。 字符集发展历史美国,英文字母、标点符号字符、阿拉伯数字,ASCII。 欧洲,加入带重音的字符、希腊字母等,Latin-1。 中国!加入汉字! GB2312 。 加入生僻字、繁体字及日韩汉字等,GBK。 各说各的,乱码。 ISO国际标准化组织一统江湖,Unicode。 再编码,UTF-8。 因为Unicode需要遵循统一的存储,就造成了资源浪费,比如汉字和英文,占用的空间是不一样了。 为了支持这种差异,节约存储,高效传输,对Unicode进行了再编码,也就是UTF-8,也是用的最广泛的字符集之一。 URL Encode和URL EscapeWeb服务器只允许URL中包含ASCII。 那怎么办?只有先encode成二进制,让服务器自己decode咯。 所以URL Encode后是“百分号+2位十六进制”的形式,比如%20。 需要Encode的包括
用Python来实际看看
URL Escape,也就是URL转义,碰到最多的就是把 Python html.escape函数,一切尽在代码中
有时候还会碰到被转成了 简要回顾本文首先讲了怎么记忆编码和解码,然后通过字符代码和字符编码的差异,引出了如今常用的UTF-8,接着从发展历史来看,字符集是怎么发展到现在的。最后解释了Web URL中容易混淆的2个概念,URL Encode和URL Escape。 当然,如果过了不久还是忘了,那么只有把这篇文章翻出来再看一遍了(手动滑稽)。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |