_bstr_t可接受多字节、UNICODE字符串,方便用以字符集转换
2013-12-18 10:46
543 查看
使用_bstr_t需要包含的头文件:
#include <comutil.h> #include <comdef.h>
// test.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <comutil.h> #include <comdef.h> #include <string> using namespace std; string ws2ms(const wstring& ws) { _bstr_t t = ws.c_str(); char* pchar = (char*)t; return pchar; } wstring ms2ws(const string& s) { _bstr_t t = s.c_str(); wchar_t* pwchar = (wchar_t*)t; return pwchar; } int _tmain(int argc, _TCHAR* argv[]) { string s = "123"; wstring ws = L"456"; ::MessageBoxA(0, s.c_str(), (char *)ws2ms(ws).c_str(), 0); ::MessageBoxW(0, ms2ws(s).c_str(), ws.c_str(), 0); return 0; }
相关文章推荐
- VC++中字符串转换CString, char*, BSTR, 多字节,unicode字符集转换的问题
- vs2010 mfc项目配置属性的字符集为Unicode和多字节时,两者转换后使用的控件外观不一样
- 【转】宽字节与单字节的转换 Unicode字符集下CString与char *转换
- CString类型转换,字符串操作和UNICODE、ANSI字符集
- char*和wchar*转换多字节字符串与UNICODE字符串转换
- 宽字节与单字节的转换 Unicode字符集下CString与char *转换
- CString与int的转换(Unicode与多字节字符集)
- vs2010中的错误错误C2665: “AfxMessageBox”: 2 个重载中没有一个可以转换所有参数类型和Unicode字符集和多字节字符集关系
- char* 和 wchar* 转换 多字节字符串与UNICODE字符串转换
- 移植性问题のCString类型转换,字符串操作和UNICODE、ANSI字符集
- 宽字节与单字节的转换 Unicode字符集下CString与char *转换
- UNICODE字符串与多字节字符串的转换
- CString类型转换,字符串操作和UNICODE、ANSI字符集
- C语言下Unicode字符串与多字节字符串转换方法
- unicode字符集与多字节字符集的转换
- 多字节字符串与UNICODE字符串的互相转换
- “使用多字节字符集”和“使用Unicode字符集”下的字符串的长度问题
- UNICODE与多字节字符集的区别及转换
- Algorithm: 字符串转换为 unicode 字节数组
- 宽字节与单字节的转换 Unicode字符集下CString与char *转换