ansi与unicode字符串转换
来源:互联网 发布:网络集成商 编辑:程序博客网 时间:2024/05/16 19:54
在windows程序中使用MultiByteToWideChar和WideCharToMultiByte实现ansi字符串与unicode字符串的转换
TCHAR* ConvertAnsiToUnicode(char* pAnsi, int iAnsiLen, int& iOutUnicodeLen)//iOutUnicodeLen返回unicode字符串长度{iOutUnicodeLen = ::MultiByteToWideChar(CP_ACP, 0, pAnsi, iAnsiLen, NULL, 0);//计算需要的长度TCHAR* pUnicode = new TCHAR[iOutUnicodeLen + 1]; //加1让字符串以‘0’结束memset(pUnicode, 0, (iOutUnicodeLen + 1) * sizeof(TCHAR));MultiByteToWideChar(CP_ACP, 0, pAnsi, iAnsiLen, pUnicode, iOutUnicodeLen);return pUnicode;}char* ConvertUnicodeToAnsi(TCHAR* pUnicode, int iUnicodeLen, int& iOutAnsiLen)//iOutAnsiLen返回ansi字符串长度{iOutAnsiLen = WideCharToMultiByte(CP_ACP, 0, pUnicode, iUnicodeLen, NULL, 0, NULL, NULL);char* pAnsi = new char[iOutAnsiLen + 1];memset(pAnsi, 0, (iOutAnsiLen + 1) * sizeof(char));WideCharToMultiByte(CP_ACP, 0, pUnicode, iUnicodeLen, pAnsi, iOutAnsiLen, NULL, NULL);return pAnsi;}
至于内存根据具体情况进行管理
阅读全文
0 0
- Unicode与ANSI字符串转换
- Unicode 与 ANSI 字符串转换
- Unicode 与 ANSI 字符串转换
- Unicode 与 ANSI 字符串转换
- ansi与unicode字符串转换
- UNICODE与ANSI转换
- ansi 与unicode转换
- ANSI UNICODE 字符串相互转换
- 如何在Unicode与ANSI之间转换字符串
- ANSI与Unicode的转换
- Unicode与ANSI字符转换
- UNICODE和ANSI字符串的转换
- UNICODE字符串和ANSI字符的转换
- 字符串处理 - ANSI - Unicode - UTF8 转换
- 字符串处理 - ANSI - Unicode - UTF8 转换
- win32 字符串 utf8 unicode ansi相互转换
- 几个字符串转换函数(ANSI-->Unicode)
- 字符串处理 - ANSI - Unicode - UTF8 转换
- eclipse如何修改dynamic web module version
- iOS分享授权问题:-canOpenURL: failed ..."This app is not allowed to query for sscheme xx
- linux 下应用编程进程内存资源的限制
- Socket 编程
- angular2+ 利用FactoryProvider和APP_INITIALIZER初始化项目配置
- ansi与unicode字符串转换
- Android Design库控件使用
- cakephp(2.x)相关技巧[0]
- JVM高级特性与实践(一):Java内存区域 与 内存溢出异常
- HDU 4405 Aeroplane chess (概率DP & 期望)
- SpringMvc学习笔记(二)SpringMvc控制器
- 富文本编辑器的制作
- Android View
- Installing and configuring Csscan in 10g and 11g (Database Character Set Scanner) (文档 ID 745809.1)