本文共 1843 字,大约阅读时间需要 6 分钟。
前言
通过串口接收来自GPS芯片发送的格式化数据,解析存取数据并返回显示经纬度所对应的地址。
通过百度API,获取了对应经纬度的相关地址数据。但是接口文档数据格式是UTF-8格式的。
突然想细致的了解下,UTF-8的具体实现。
经过网页返回的数据,我将返回数据保存到了本地文件。
0 27.985899990961 120.68210002289 浙江省温州市瓯海区塘东路 梧田,南浦,大堡底 塘东路 瓯海区 温州市 浙江省 中国 178 南塘大道立交桥西406米
UTF-8初步了解
UTF-8用1到6个字节编码UNICODE字符,是可变长类型
上面是他的编码类型,网上有很多参考内容
UTF-8概要:
遇到英文,UTF-8自动用1个字节去记录,
例如: 字符‘a’ 的字符集编码是97,UTF-8自动选用了1字节的方法 0xxxxxxx,排序后0110 0001
遇到中文,UTF-8一般用3个字节去表示
例如: 中文‘浙’ 的编码GBK2312的16进制是 6D59,其二进制0110 1101 0101 1001
由UTF-8表示的话,则自动选取 3字节的方法1110xxxx 10xxxxxx 10xxxxxx 对应表
1110xxxx 10xxxxxx 10xxxxxx 0110 110101 011001排序后
1110 0110 1011 0101 1001 1001 1110 0110
大概思路:
Getplacename大概思路:
但我还是遇到一个非常懊恼的问题,这个wchar_t不知道为什么无法打印出来。
希望我以后能够解决。
2015年11月27日 - wchar_t 打印到控制台:
#include <locale.h>
在类构造或者其他位置设置一次即可。
setlocale(LC_ALL, "Chinese-simplified");
转载地址:http://qaqrb.baihongyu.com/