清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
// 输入Big5字符,返回Gb简体字符
//----------------------------
// 函数输入Big5字符,返回Gb简体字符
//----------------------------
AnsiString __fastcall Big2Gb(AnsiString sBig)
{
char* pszGbt = NULL; // Gb编码的繁体字符
char* pszGbs = NULL; // Gb编码的简体字符
AnsiString sGb; // 返回的字符串
int iLen = 0; // 需要转换的字符数
pszGbt = (char*)sBig.c_str();
// 计算转换的字符数
iLen = MultiByteToWideChar(950, 0, pszGbt, -1, NULL, 0);
// 给pszGbs分配内存
pszGbs = new char[iLen+1];
// 转换Gb码繁体到Gb码简体,使用API函数LCMapString
LCMapStringA(0x0804, LCMAP_SIMPLIFIED_CHINESE, pszGbt, -1, pszGbs, iLen);
// 返回Gb码简体字符
sGb = pszGbs;
// 释放内存
delete [] pszGbs;
return sGb;
}
//----------------------------
// 函数输入Big5字符,返回Gb简体字符
//----------------------------
AnsiString __fastcall Big2Gb(AnsiString sBig)
{
char* pszGbt = NULL; // Gb编码的繁体字符
char* pszGbs = NULL; // Gb编码的简体字符
AnsiString sGb; // 返回的字符串
int iLen = 0; // 需要转换的字符数
pszGbt = (char*)sBig.c_str();
// 计算转换的字符数
iLen = MultiByteToWideChar(950, 0, pszGbt, -1, NULL, 0);
// 给pszGbs分配内存
pszGbs = new char[iLen+1];
// 转换Gb码繁体到Gb码简体,使用API函数LCMapString
LCMapStringA(0x0804, LCMAP_SIMPLIFIED_CHINESE, pszGbt, -1, pszGbs, iLen);
// 返回Gb码简体字符
sGb = pszGbs;
// 释放内存
delete [] pszGbs;
return sGb;
}