zoukankan      html  css  js  c++  java
  • ANSI编码方式转化为UTF-8方式

    说明:

    记事本txt有四种编码方式,分别为:UTF-8、ANSI、Unicode和Unicode big endian,当进行写操作,创建的txt编码格式,与写入汉字的编码方式相同;如果写入的汉字是不同的编码方式,此时创建的txt中,会出现乱码,所以需要把汉字转化为同一编码方式。

    本文主要介绍:把汉字编码方式,由ANSI方式转化为UTF-8方式:

    一、ANSI转化为UTF-8程序:

    1. CString ToUTF8(const wchar_t* buffer, int len)  //返回类型为CString  
    2. {    
    3.     int size = ::WideCharToMultiByte(CP_UTF8, 0, buffer, len, NULL, 0, NULL,    
    4.             NULL);    
    5.     if (size == 0)    
    6.         return "";    
    7.     
    8.     std::string newbuffer;    
    9.     newbuffer.resize(size);    
    10.     ::WideCharToMultiByte(CP_UTF8, 0, buffer, len,    
    11.             const_cast<char*>(newbuffer.c_str()), size, NULL, NULL);    
    12.     
    13.     //如需返回string类型,直接 return newbuffer  
    14.       
    15.     TCHAR outstr[64]; //string 转化为CString返回  
    16.     CString strTemp;  
    17.     memset(outstr, ''sizeof(outstr));  
    18.     memcpy(outstr,newbuffer.c_str(),newbuffer.size());  
    19.     strTemp.Format("%s",outstr);  
    20.     return strTemp;   
    21. }    

    二、函数调用形式

    1. wstring text =  L"汉字";   
    2. CString strTemp = ToUTF8(text.c_str(),text.size());  





  • 相关阅读:
    Fragment练习
    view有了父元素就不能再添加父元素
    margin与padding的不同
    BroadcastReceiver组件
    史上最著名的10个思想实验[转]

    godaddy域名空间购买波折
    碎片2
    程序员要多喝水
    google.com的首页换上了pc man游戏
  • 原文地址:https://www.cnblogs.com/jpfss/p/8653294.html
Copyright © 2011-2022 走看看