项目中,想通过Json传递0x00-0xFF字符串,自然想到Json的string值。
json官网中String介绍
A string is a sequence of zero or more Unicode characters, wrapped in double quotes, using backslash escapes. A character is represented as a single character string. A string is very much like a C or Java string.
Unicode characters,世界各个国家的字符编码成0x00-0x10FFFF的值(通用编码字符集),一共有17个0x00-0xFFFF平面,其中0x00-0xFFFF为基本多语言平面(UCS-2表示的字符集相同)
UCS(Universal Character Set)是ISO标准,Unicode是苹果等公司制定的统一编码标准,他们两个标准相互兼容,两个组织独立运作。UCS-2就是2个字节表示通用编码字符集,UCS-4就是4个字节表示。
UTF是Unicode对通用编码字符集编码的方式
UTF-16编码,刚开始所有编码字符集小于64k,很快超过了64k,扩展了4个字节
UTF-16用2个或4个字节表示通用编码字符集,D8 00 –D8 FF保留用于扩展4个字节,其他段表示UTF-16占用两个字节。
UTF-32用4个字节表示通用编码字符集
UTF-8用1-6个字节表示通用编码字符集,其中基本多语言平面用3个字节以内
Golang字符集默认使用UTF-8
Json string想传递0x00-0xFF值的buff是不行的。一个简单办法是对这段buff进行base64编码,然后放到json string中,这样都是ascii字符集。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。