转换思路如下
1.ANSI先转成UNICODE
2.UNICODE转成UTF8
下面代码是直接由UNICODE转为UTF8编码
1.ANSI先转成UNICODE
2.UNICODE转成UTF8
下面代码是直接由UNICODE转为UTF8编码
- </pre><pre name="code" class="cpp">#include "tchar.h"
- #include "stdio.h"
- #include "windows.h"
- void main()
- {
- WCHAR szStr[]=_T("中国");
- int u8Len=WideCharToMultiByte(CP_UTF8,NULL,szStr,wcslen(szStr),NULL,0,NULL,NULL);
- char * szU8=new char[u8Len+1];
- WideCharToMultiByte(CP_UTF8,NULL,szStr,wcslen(szStr),szU8,u8Len,NULL,NULL);
- szU8[u8Len]='\0';
- printf(szU8);
- }
本文介绍了一种从ANSI编码转换到UTF8编码的方法,首先将ANSI编码转换为UNICODE,再从UNICODE转换为UTF8。提供了一个使用C++实现的例子,演示如何完成这一过程。

被折叠的 条评论
为什么被折叠?



