try { wLCID = MAKELCID(MAKELANGID(LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED), SORT_CHINESE_BIG5); LCMapString(wLCID, LCMAP_SIMPLIFIED_CHINESE, szBuf, nReturn, pcBuf, nReturn + 1); strncpy(szBuf, pcBuf, nReturn); } __finally { delete []pcBuf; } } //--------------------------------------------------------------------------- // 测试代码 void __fastcall TForm1::Button1Click(TObject *Sender) { char szBuf[255]; // 从GB2312转到GBK strcpy(szBuf, Edit1->Text.c_str()); GB2GBK(szBuf); Edit2->Text = String(szBuf); // 从GB2312转到BIG5,通过GBK中转 strcpy(szBuf, Edit1->Text.c_str()); GB2GBK(szBuf); GBK2BIG5(szBuf); Edit3->Text = String(szBuf); } 注意,请不要使用String类的c_str()作为上述几个函数的传入参数。 |