C++ STRING 和WSTRING 之间的互相转换函数
来源:互联网 发布:java io流是 编辑:程序博客网 时间:2024/05/11 17:37
#include <string>
std::string ws2s(const std::wstring& ws)
{
std::string curLocale = setlocale(LC_ALL, NULL); // curLocale = "C";
setlocale(LC_ALL, "chs");
const wchar_t* _Source = ws.c_str();
size_t _Dsize = 2 * ws.size() + 1;
char *_Dest = new char[_Dsize];
memset(_Dest,0,_Dsize);
wcstombs(_Dest,_Source,_Dsize);
std::string result = _Dest;
delete []_Dest;
setlocale(LC_ALL, curLocale.c_str());
return result;
}
std::wstring s2ws(const std::string& s)
{
setlocale(LC_ALL, "chs");
const char* _Source = s.c_str();
size_t _Dsize = s.size() + 1;
wchar_t *_Dest = new wchar_t[_Dsize];
wmemset(_Dest, 0, _Dsize);
mbstowcs(_Dest,_Source,_Dsize);
std::wstring result = _Dest;
delete []_Dest;
setlocale(LC_ALL, "C");
return result;
}
转载自:http://www.cppblog.com/kenwell/archive/2008/05/21/50661.html
- C++ STRING 和WSTRING 之间的互相转换函数
- c++ string 和wstring 之间的互相转换函数
- C++ STRING 和WSTRING 之间的互相转换函数
- C++ STRING 和WSTRING 之间的互相转换函数
- C++ STRING 和WSTRING 之间的互相转换函数
- C++ STRING 和WSTRING 之间的互相转换函数
- C++ STRING 和WSTRING 之间的互相转换函数
- C++ STRING 和WSTRING 之间的互相转换函数
- C++ STRING 和WSTRING 之间的互相转换函数
- wstring和string互相转换
- C++中wstring和string的互相转换
- wstring 和 string 之间的相互转换方法
- List和string之间的互相转换
- string和numeric之间的互相转换
- List和string之间的互相转换
- List和string之间的互相转换
- wstring string CString之间的转换
- wstring 与 string 之间的转换
- 理解虚基类、虚函数与纯虚函数的概念
- 资料
- android第三方应用apk安装和运行控制解决方案
- 模型,又见模型
- 草记瀑布模型和螺旋模型
- C++ STRING 和WSTRING 之间的互相转换函数
- Linux AS4 系统下安装Oracle 10g完整篇(二)
- 常见错误53: 对于虚基类子对象进行默认初始化----读书笔记《C++ gotchas》--感觉不错
- Linux AS4 系统下安装Oracle 10g完整篇(三)
- java调用脚本的方法在resin中的问题
- 开源spider
- jfreechart 线图
- VC中CFileDialog的扩展问题
- test1