UTF-8编码是一种针对Unicode的可变长度字符编码,UTF-8又名万国码。 UTF-8作为Unicode的一种实现方式,其字节结构有特殊要求。所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的编码里去就是由三个字节来组织。
一般在短信中经常会用到UCS2编码,从事物联网定位跟踪设备的相关企业,市场主要产品包括了资产监测设备、资产跟踪设备、人员定位设备等。近期笔者在测试定位通信设备中遇到乱码的问题。针对该问题笔者首先需要将UCS2编码转换为UTF-8编码。
同时笔者也收到了部分客户提到关于USC2到UTF-8转换过程中出现异常的情况。
因此本文主要介绍了如何完成从UCS2到UTF-8的转换方式:
在资产监测设备的开发过程中,关于编码之间的转换是最基础的问题之一,后期开发人员需要对更多问题进行深入优化,例如如何实现运动轨迹实时监测功能、如何实现震动报警的功能等,为不同行业的企业在资产监测方面提供优质的解决方案。
/*******************************************************************
** 函数名: Ucs2_To_Utf8
** 函数描述: 将UCS2编码字节流(HEX转ASCII方式存储)转为UTF8编码字节流
** 参数: [in]pInput:指向UTF8编码字节流
** [in]Len:Ucs2编码字节流长度
** [in]BigE:是否是大端字节序
** [out]pUtf8:转换后的Utf8编码字节流
** 返回: 成功UTF8字节流长度,失败返回-1
********************************************************************/