各位高手,请问VC中如何实现汉字的Unicode编码转换成Char类型。为什么利用WSTOMB可以实现英文的转换,而不能实现汉字的转换。该怎么办。有知道的请及时告诉,谢谢。
解决方案 »
- 求介绍一本学习COM和ATL的好书
- 关于数据组播接收问题
- vector存放子类指针的问题
- 关于《windows》程序设计中 Environ.c和 Head.c的问题
- 如何把状态栏的图标显示为16x16的
- 据说VC 的 DLL 不能直接引用类, 那怎么样办呢?
- MFC MDI CFileView如何与Docment绑定
- 非常专业的问题-多处理器的使用
- 字符串如何 2 合 1 ? 请教高手
- 如何在FormView的Picture控件中画一个函数的图形,且不能超出该控件所划定的区域
- 怎样能使我的程序看起来只有一个view,并且最大化,不许被用户关闭?
- com 服务器组件必须要由用户激活吗?如果com服务器组件一直在远程机器上运行,客户程序怎么和服务对象建立连接呢?
sprintf(sz,"%s",L"aaaaaaaaaaa");
int nSize = ::WideCharToMultiByte(CP_ACP,0,strName,-1, lpszName, 257, NULL, NULL);
//注意在Project-》Setting-》Link中加入comsupp.lib,从而使_bstr_t可用void CAaaDlg::OnButton1()
{
// TODO: Add extra cleanup here
_bstr_t a(L"sdfsafds");
a+="zzz";
char * b = (char *)a;//获得内部BSTR的char*指针,勿做修改和释放
WCHAR *c=(WCHAR *)a;//获得内部BSTR的WCHARr*指针,勿做修改和释放
CString p = L"asdfsa";
p+="ppp";
WCHAR *y =p.AllocSysString(); //获得WCHAR*指针,使用完请释放,否则有内存泄漏。
char *z = p.GetBuffer(p.GetLength()+1);//内部Buffer指针,z不要释放 ::SysFreeString(y);}