zoukankan      html  css  js  c++  java
  • mfc Unicode转 ASNI ,WCHAR 转 CHAR

    知识点:
       宽字符转多字节字符 
       多字节字符转宽字符
    
    
    什么是ANSI,什么又是UNICODE呢?其实这是两种不同的编码方式标准,ANSI中的字符采用8bit,而UNICODE中的字符采用16bit
    在VC++中 ANSI标准 体现为 CHAR类型 而Unicode标准体现为WCHAR类型
    
    
    一、宽字符转多字节字符
     Unicode转 ASNI  
     WCHAR 转 CHAR
    方法1:
    #include <atlconv.h>
    USES_CONVERSION ;;//
    W2A(WCHAR);//返回一个 ASNI标准的多字节字符
    
     方法2:  WideCharToMultiByte 
    {
              WCHAR wText[20] = {L"宽字符转换实例!OK!"}; // 
              DWORD dwNum;
               CHAR psText[256];
              dwNum=sizeof(wText)/2;//获取字串长度
             // dwNum = WideCharToMultiByte(CP_OEMCP,NULL,wText,-1,NULL,0,NULL,FALSE); ////获取字串长度
              WideCharToMultiByte (CP_OEMCP,NULL,wText,-1,psText,dwNum,NULL,FALSE);
              UpdateData(false);//为了方便下断测试
    } 
    
    二、多字节字符转宽字符 
     CHAR 转WCHAR
     ASNI 转 Unicode
    
     方法1:
     USES_CONVERSION ;;//
     A2W(CHAR);//返回WCHAR类型
     
    
    
    方法2:MultiByteToWideChar 
    {
            CHAR sText[]="abc";
            WCHAR pwText[256];
            int dwNum=sizeof(sText);
            //dwNum = MultiByteToWideChar (CP_ACP, 0, sText, -1, NULL, 0); //获取字串长度
            MultiByteToWideChar (CP_ACP, 0, sText, -1, pwText, dwNum);
            UpdateData(false);//为了方便下断测试
    
        }
  • 相关阅读:
    oracle impdp 导入
    oracle权限的分配
    Oracle CASE WHEN 用法介绍
    Oracle自动执行任务(存储过程)
    PL/SQL注册码
    ORACLE基本的sql语句
    ORACLE导出导入问题和表空间问题
    PLSQL笔记
    JSEL 表达式
    asp.net HTTP教程一(HTTP运行期与页面执行模型 )
  • 原文地址:https://www.cnblogs.com/whzym111/p/6201687.html
Copyright © 2011-2022 走看看