VS2005如何实出GBtoBig5转换?

来源:百度知道 编辑:UC知道 时间:2024/09/25 11:36:17
如题,最好有代码,或可行的方案,
1楼的是.net代码吧,我要的是C++的代码。
VC++里用托管代码不太稳定,我以前试过,后来改为把托管代码那块写成COM了,不过这会只要转个繁体,不想再写托管的COM了,这个也不好用。

成功实现:代码如下
CString Big5andGB::GBtoBig5(CString GB)
{
CString Big5;
int Len = GB.GetLength()+1;
WCHAR *unicodebuff = new WCHAR[Len];ZeroMemory(unicodebuff,Len*sizeof(WCHAR));
LCMapString(SORT_CHINESE_BIG5,LCMAP_TRADITIONAL_CHINESE,GB.GetBuffer(),-1,unicodebuff,Len);
Big5 = unicodebuff;
delete[] unicodebuff;
return Big5;
}

using Microsoft.VisualBasic;

string lstr_ret = Strings.StrConv(astr_word,VbStrConv.TraditionalChinese, 0);

lstr_ret = Strings.StrConv(astr_word, VbStrConv.SimplifiedChinese, 0);

不好意思,以为你用的C#呢。。。不过可以尝试一下方法

这样都可以,VC++可以这样调用?

MultiBytesToWideChar()
WideCharToMultiBytes()