
字符编码介绍
文章平均质量分 81
由iOS的 emoji编码、utf-8、UTF-16编码、完整的Unicode码表、URLEncode编码、GB2312等7偏博客文组成。可以让读者详细了解UTF-8和UTF-16的概念,了解字符占用字节数等基础知识。
hherima
移动互联网,大有可为!APP开发经历:飞信、和4G、搜狐视频、56视频等项目。
展开
-
事物分段处理的好处,字符串处理
今天处理一个十六进制色值和alpha的问题,忽然想到。事物分段处理,逻辑容易的多。这也让我想起了快速排序现在有一个字符串@"#ffffff,0.2"或者@"#ffffff"这种无alpha默认是1.0,程序要将其解析成一个色值和alpha值。老的处理,OC代码片段+ (UIColor *)colorWithHexAlphaString:(NSString *)hexString {...原创 2018-10-25 09:53:12 · 672 阅读 · 0 评论 -
汉字编码之GBK编码(附完整码表)
继续字符编码的学习。今天介绍一下GBK(汉字内码扩展规范),GB 2312 GB18030。引用网友的话可以概括一下:GBK和UTF8的区别:GBK就是在保存你的帖子的时候,一个汉字占用两个字节。。外国人看会出现乱码,此为我中华为自己汉字编码而形成之解决方案。UTF8就是在保存你的帖子的时候,一个汉字占用3个字节。。但是外国人看的话不会乱码,此为西人为了解决多字节字符而形成之解决方案。GBK编码是GB2312编码的超集,向下完全兼容GB2312。GB18030编码向下兼容GBK和GB2312,GB原创 2016-03-04 12:21:24 · 829857 阅读 · 7 评论 -
判断汉字正则表达式更严谨方法!
正如网上流传的,判断中文的正则表达式,绝大部分是这么写的(OC语言):NSPredicate* predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",@"[\u4e00-\u9fa5]"];/*判断是否为中文的正则表达式*/if([predicate evaluateWithObject:name]){ //是中文}else{ //不是中文}然而上面的正则表达式,逻辑上讲其实不太严谨:比如一些生僻字,它不能正原创 2015-07-20 14:22:41 · 13278 阅读 · 12 评论 -
Unicdoe【真正的完整码表】对照表(一)
真正完整的Unicode码表,其中CJK = Chinese-Japanese-Korean 下面列举了一些相关的索引。查看完整索引到:http://blog.youkuaiyun.com/xjgprs/article/details/57805742E80-2EFF:CJK 部首补充 (CJK Radicals Supplement) 2F00-2FDF:康熙字典部首 (Kangxi Ra原创 2013-06-07 22:13:26 · 721290 阅读 · 8 评论 -
base64加密,解密,encode,decode,编码详解+实现
以下部分内容摘自wiki百科:http://zh.wikipedia.org/wiki/Base64概述 Base64是一种基于64(A-Z、a-z、数字0-9 ,‘+’,‘/’)个可打印字符,来表示二进制数据的表示方法,基本思想是把所有字符都转化到这64个打印字符,方便流通。 由于2的6次方等于64,所以每6个位元为一个单元,对应某个可打印字符原创 2013-03-25 17:48:56 · 12699 阅读 · 3 评论 -
网络传输文本,urlEncode和urldecode的iOS实现。
-------------------------------------------欢迎查看字符编码【专栏】------------------------------------------汉字编码之GBK编码【点击】 判断汉字正则表达式更严谨方法【点击】记事本输入“联通”俩字,关闭再打开乱码 【点击...原创 2013-03-04 20:59:40 · 7529 阅读 · 2 评论 -
ios中Mini zip开源工程ZipArchive,压缩中文文件名乱码问题【解决】
一、首先介绍minizip 的使用方法ziparchive是基于开源代码”MiniZip”的zip压缩与解压的Objective-C 的Class,使用起来非常的简单方法:从http://code.google.com/p/ziparchive/ 上下载ZipArchive.zip,解压后将代码加入工程中,并且把zlib库添加到工程中使用方法:1. 压缩:ZipArchiv原创 2013-04-10 23:45:14 · 8717 阅读 · 3 评论 -
Unicdoe【真正的完整码表】对照表(二)汉字Unicode表
注意:下面这两段是代理区。即第1——16平面的间接表示,四个字节的汉字就在这里表示D800-DBFF:High-half zone of UTF-16 DC00-DFFF:Low-half zone of UTF-16 本篇中包含了所有常用汉字27973个,剩余汉字使用代理区标识欢迎查看字符编码相关博客专栏比如:由iPhone emoji问题牵出的UTF-16编码,UTF-8编码探究原创 2013-06-07 11:20:23 · 1952346 阅读 · 17 评论 -
记事本输入“联通”俩字,关闭再打开乱码
这是个很有意思的事情。这里需要提一下ANSI,不同的国家和地区制定了不同的标准,由此产生了 GB2312, BIG5, JIS 等各自的编码标准。然后,这些编码方式没有固定的格式,但是比如说UTF-8的格式是非常明显的,比如最高位是0,110,1110等等。“联”ANSI编码是 0xC1AA 二进制排列是 1100 0001 1010 1010;“通”ANSI编码是 0xCDA8 二进制排列是 1100 1101 1010 1000;原创 2014-09-25 11:48:38 · 12981 阅读 · 2 评论 -
iPhone emoji问题牵出的Unicode代理区的思考
emoji 没什么特别的,也是正常的Unicode编码,只是通过代理区实现 这里说的utf-8和utf-16,其实本质上是一样的。只是utf-8是一个直接的映射。而utf-16需要根据代理区的(前导代理,后尾代理)来映射。utf-16比utf-8多了一步而已!话又说回来:如果不是代理区域的出现,就emoji 微笑的unicode: 0X1-F603来说。计算机甚至不知道这是一个字符,还是两个字符!所以,搞了一个Unicode:D83D-DE03来表示unicode: 0X1-F603,防止计算机解码混原创 2014-08-31 18:51:00 · 14310 阅读 · 4 评论 -
字符编码的奥秘utf-8, Unicode
Unicode(统一码,万国码)是基于通用字符集(Universal Character Set)的标准发展。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足语言、跨平台进行文本转换、处理的要求。 Unicode是1988年由Apple和Xerox共同建立的一项标准。1991年,成立专门的协会来开发和推动Unicdoe。 Unicode用数字0到0X10FFFF来映射这些数字,最多容纳1114112个字符。1114112是怎么计算出来的?将0X10FFFF分成0原创 2013-03-10 05:52:24 · 11855 阅读 · 3 评论