C++ Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
//窄字符转宽字符
void ConvertA2W(wchar_t* the_strw, char* the_str, int len)//注意:默认the_strw和the_str有足够长度的内存,大于len字符;
{
    TCHAR* old_locale = _tcsdup( _tsetlocale(LC_ALL,NULL) ); 
    setlocale(LC_ALL, ".936");
    size_t nSize = len + ;
    memset(the_strw, , sizeof(wchar_t)*len);

size_t i_tem;
    mbstowcs_s(&i_tem, the_strw, nSize, the_str, nSize);
    _tsetlocale( LC_ALL, old_locale );                  //还原语言区域的设置 
    free( old_locale );                                 //还原区域设定
}
//宽字符转窄字符
void ConvertW2A(wchar_t* the_strw, char* the_str, int len)//注意:默认the_strw和the_str有足够长度的内存,大于len字符;
{
    TCHAR* old_locale = _tcsdup( _tsetlocale(LC_ALL,NULL) ); 
    setlocale(LC_ALL, ".936");
    size_t nSize = len + ;
    memset(the_str, , sizeof(char)*len);

size_t i_tem;
    wcstombs_s(&i_tem, the_str, nSize, the_strw, nSize);
    _tsetlocale( LC_ALL, old_locale );                  //还原语言区域的设置 
    free( old_locale );                                 //还原区域设定
}

wchat_t与char互转的更多相关文章

  1. c++ string 与 char 互转 以及base64

    c++ string 与 char 互转 很简单如下 ] = {'A','B','C','D','E'}; printf("%s\n",bts); //char to string ...

  2. CString与char *互转总结

    1 前言 今天在网上看论坛,发现大家对CString与Char *互转各说一词,其实我发现提问者所说的情况与回答问题的人完全不是同一情况,这里做一总结. 首先大家得清楚一件事,一般在网上提出问题的人大 ...

  3. C++ TCHAR* 与char* 互转

    C++ TCHAR* 与char* 互转 在MSDN中有这么一段: Note: The ANSI code pages can be different on different computers, ...

  4. C#string与char互转

    string s = "asdf"; //字符转char char[] c = s.ToCharArray(); Console.WriteLine(s[]); //char转st ...

  5. QString和char*互转

    1. QString转为char * // QString转QByteArray QByteArray sr = strQ.toLocal8Bit(); int len = sr.length(); ...

  6. CString和char互转,十六进制的BYTE转CString

    CString转char: CString m_Readcard; char ReaderName[22]; strcpy((char*)&ReaderName,(LPCTSTR)m_Read ...

  7. 2、CString与string借助char *互转

    CString是MFC中的类,MFC前端界面中获得的字符串是CString类.标准C/C++库函数是不能直接对CString类型进行操作的. string是C++中的类. 安全性 CString &g ...

  8. String -- char[]互转

    1.String --> char[] String str = "abc"; char[] chs = str.toCharArray(); 2.char[] --> ...

  9. java乱码详解(java中byte与char的转换)

    转自:http://hi.baidu.com/%C6%F3%D2%B5%BC%D2%D4%B0/blog/item/825a4858d6248e8b810a181a.html   java byte与 ...

随机推荐

  1. 数据库连接dbcp$c3p0

    <?xml version="1.0" encoding="UTF-8"?> <c3p0-config> <!-- 这是默认配置信 ...

  2. Ubuntu编码问题

    Ubuntu编码问题 root@magus-18:/srv/rorapps/fgcc# rails -v Sorry, command-not-found has crashed! Please fi ...

  3. windows下更换jdk运行当前jar包处理命令一则

    可在文本文档中新建以下内容 set JAVA_HOME=C:\jdk1.7.0_67set CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOMe%\lib\too ...

  4. Struts2中的变量

    <package name="mypackage" extends="struts-default"> <global-results> ...

  5. Linux Load average负载详细解释

    http://tianmaotalk.iteye.com/blog/1027970     Linux Load average负载详细解释   linux查看机器负载

  6. jquery easyUi columns日期格式化

    jquery easyUi  columns日期格式化 方法一 Date.prototype.format = function (format) { var o = { "M+" ...

  7. crc16 校验算法 C#

    封装一个静态类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...

  8. requests.exceptions.MissingSchema: Invalid URL 'xxxxxxxxxxxxx': No schema supplied. Perhaps you meant xxxxxxxxxxxxx

    import requests session = requests.session() carProposalUrl = "www.caaaa.com.cn/aaaa/aaaaa/carP ...

  9. laravel中,提交表单后给出提示例如添加成功,添加失败等等

    laravel中的表单插入,我想在表单插入成功后,可以像thinkphp一样可以有一个提示内容,上网Google,他们还是给出的方法就是 return redirect('/')->with(' ...

  10. C语言第十一回合:预处理命令的集中营

    C语言第十一回合:预处理命令的集中营   [学习目标]   1.         宏定义 2.         文件包括"处理 3.         条件编译 预处理命令:能够改进程序设计的 ...