以下是GB2312编码与UTF-8编码相互转换,自测通过。
思路:GB2312编码与UTF-8编码相互转换,是通过转化为中间编码(UNICODE),再转化为其它编码
//------------------------------------------------------------------------------------------------------------------------------
#ifdef LINUXCODE
#include <iconv.h>
#endif
//这里再包含其它头文件
//这里是由UTF-8转化为UNICODE,其中pText是需要转换内容的指针,pOut是转换后内容的指针
int cU8xU(WCHAR* pOut,char *pText)
{
int ret = 0;
char* uchar = (char *)pOut;
unsigned cIn = (unsigned char)pText[0];
if(cIn<0x80)
{ // ASCII 0x00 ~ 0x7f
pOut[0] = pText[0];
}
else if(cIn<0xdf)
{
uchar[0] = (pText[0]<<6)|(pText[1]&0x3f);
uchar[1] = (pText[0]>>2)&0x0f;
ret = 1;
}
else if(cIn<0xef)
{
uchar[0] &