`
zerosoul
  • 浏览: 24908 次
  • 性别: Icon_minigender_1
  • 来自: Earth
社区版块
存档分类
最新评论

Unicode与char *转换 - WideCharToMultiByte/MultiByteToWideChar

阅读更多
WideCharToMultiByte:Unicode转char *(宽字节转多字节)
MSDN:http://msdn.microsoft.com/en-us/library/dd374130(VS.85).aspx
#include "stdafx.h"
#include "stdio.h"
#include "windows.h"

int _tmain(int argc, _TCHAR* argv[])
{
	TCHAR strWideChar[] = _T("zerosoul");	//Unicode宽字节编码字符串strWideChar
	//获得转换后的字符串长度n_len
	int n_len = WideCharToMultiByte(CP_ACP,NULL,strWideChar,-1,NULL,0,NULL,NULL);
	char* strMultiByte = new char[n_len];	//ANSI多字节编码字符串strMultiByte
	WideCharToMultiByte(CP_ACP,NULL,strWideChar,-1,strMultiByte,n_len,NULL,NULL);  //开始转换

	printf("strMultiByte : %s\n",strMultiByte);
	return 0;
}


MultiByteToWideChar:char *转Unicode(多字节转宽字节)
MSDN:http://msdn.microsoft.com/en-us/library/dd319072(VS.85).aspx
#include "stdafx.h"
#include "stdio.h"
#include "windows.h"

int _tmain(int argc, _TCHAR* argv[])
{
	char strMultiByte[] = "zerosoul";	//ANSI多字节编码字符串strMultiByte
	//获得转换后的字符串长度n_len
	int n_len = MultiByteToWideChar(CP_ACP,NULL,strMultiByte,-1,NULL,0);
	TCHAR* strWideChar = new TCHAR[n_len];	//Unicode宽字节编码字符串strWideChar
	MultiByteToWideChar(CP_ACP,NULL,strMultiByte,-1,strWideChar,n_len);	//开始转换

	_tprintf(_T("strWideChar : %s\n"),strWideChar);
	return 0;
}
分享到:
评论

相关推荐

    中文转unicode,相互转换utf8

    中文与unicode之间的相互转换,没有用CString,Linux和Windows应该都可以使用。是网上的代码,只是搬运。但是找了很久才找到的好东西。 几个关键字:wchar_t* char* WideCharToMultiByte mbstowcs wcstombs

    VC/C++ 字符编码格式转换

    通过调用封装API函数WideCharToMultiByte和MultiByteToWideChar,实现ANSI/UTF-8/Unicode编码格式的相互转换。有C++和C两个版本。

    unicode与asc的区别及转换

    unicode与asc码的区别,unicode环境下说的长度为字符个数,而asc环境下为字节。两个转换函数WideCharToMultiByte,MultiByteToWideChar的说明及正确的使用方法。

    VC++对字符串处理

    精心整理,大家在使用VC++处理字符串的时候肯定遇到unicode 宽字符的问题: 比如:“不能将参数 1 从“const char [5]”转换为“LPCTSTR””之类的问题。 在此文档中告诉你怎么转换。 cstring 转换 char cstring ...

    directshow USB摄像头预览

    //如果当前设备的友好名字与用户指定的设备名字相同, //则将当前设备标识绑定为Filter形式 if(strcmp(friendlyName,inFriendlyName) == 0) { moniker->BindToObject(0,0,IID_IBaseFilter...

    MultiByteToWideChar和WideCharToMultiByte用法详解

    而宽字符,顾名思义,就是用16bit表示的字符,典型的有UNICODE.关于windows下的ASCII和UNICODE的更多信息,可以参考这两本经典著作:《windows 程序设计》,《windows 核心编程》.这两本书关于这两种字符都有比较详细的...

    GB2312编码和UTF-8互转(c语言实现)

    GB2312编码与utf-8编码的字符串的转换,主要使用windows api函数MultiByteToWideChar和WideCharToMultiByte,代码简洁,经测试可用

    易语言取QQ群验证

    易语言取QQ群验证源码,取QQ群验证,获取网页源码,找本本,getACSRFToken,CharCodeat,ToCharArray,Ansi转Unicode,Utf8转Ansi,Utf8转Unicode,Unicode转Ansi,MultiByteToWideChar,WideCharToMultiByte,...

    unicode 字符集 与 多字节字符集 转换的代码

    unicode 字符集 与 多字节字符集转换/kekegeneral

    Windows下目录监视程序代码

    /*----------------------线程函数------------------------------------*/ DWORD WINAPI CDDlg::ThreadProc( LPVOID lParam ) //线程函数 { CDDlg* obj = (CDDlg*)lParam; //参数转化 obj->hDir = CreateFile( ...

    LPK专杀C语言源码

    WideCharToMultiByte(CP_ACP, NULL, lpW_Char, -1, lpChar, _countof(lpChar), NULL, FALSE); // 多字符转换为宽字符(ASCII --> Unicode) #define CHAR_TO_WCHAR(lpChar, lpW_Char) \ MultiByteToWideChar(CP...

    80 81 82 编解码

    Ucs2与GB2312互换可以用VC中的WideCharToMultiByte以及MultiByteToWideChar函数。 Ucs2本身有3种格式,常用的是80格式,即80开头,每两个字节表示一个字符,还有81,82格式,后两种可以用一个字节表示一个汉字。80,...

    PB的utf-8转换

    PB的utf-8转换,包括加码解码等等 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

    编码转换类1.2版模块源码

    比用Api“MultiByteToWideChar、WideCharToMultiByte”的有两个好处。。1,Api的可能造成程序崩溃(相信很多人都遇到过),使用过多个易语言界大佬的编码转换都会出现这个情况,而我这个模块就不会。2,Api的如果...

    C++使用WideCharToMultiByte函数生成UTF-8编码文件的方法

    用来映射Unicode字符串的WideCharToMultiByte函数经常被用来进行UTF-8编码的转换,以下我们将看到C++使用WideCharToMultiByte函数生成UTF-8编码文件的方法,首先先来对WideCharToMultiByte作一个详细的了解:

    MultiByteToWideChar和WideCharToMultiByte用法详解.pdf

    。。。

    MultiByteToWideChar和WideCharToMultiByte用法详解.docx

    。。。

    Unicode文件读取

    从文本文件(unicode文本)中读取字符串,并转化为CString(char) 演示mbstowcs 和 WideCharToMultiByte的使用

    易语言QQ拼音输入法接口

    易语言QQ拼音输入法接口源码,QQ拼音输入法接口,处理_,Utf8转Ansi_,Unicode转Ansi_,Utf8转Unicode_,WideCharToMultiByte,MultiByteToWideChar_utf8

Global site tag (gtag.js) - Google Analytics