您的位置:首页 > 其它

中文简体(GBK)与繁体(BIG5)的转换

2005-08-18 21:08 651 查看
©2005 黄友生。本文由原作者发布于MSN Space、CSDN。你可以保存、在非商业软件中使用、在非盈利性文章中引用本文中的部分或全部文字,但请注明作者及原文地址。要用于其它用途,请先联系作者(eien@eyou.com)。作者不保证本文完全正确无误、不对因本文中的理论或代码缺陷造成的损失负责。 在CSDN上碰到有人问到这个问题,于是整理一下,存档。以下代码需要 Windows NT 4.0 以上,不支持Windows 9x。编译环境为非UNICODE。 char szGBK[128] = "中华人民共和国";
WCHAR wszUnicode1[128];
WCHAR wszUnicode2[128];
char szBig5[128];
// GBK -> UNICODE
int iLen = MultiByteToWideChar( 936, 0, szGBK, strlen( szGBK ), wszUnicode1, 128 ); // 把简体字形转换成繁体字形(华->華)LCMapStringW( MAKELCID( MAKELANGID( LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED ), SORT_CHINESE_PRCP ), LCMAP_TRADITIONAL_CHINESE, wszUnicode1, iLen, wszUnicode2, 128 ); // UNICODE -> BIG5iLen = WideCharToMultiByte( 950, 0, wszUnicode2, iLen, szBig5, 128, NULL, NULL );
FILE* fp = fopen( "c://test.htm", "wb" );
if( fp != NULL )
{
fwrite( szBig5, 1, iLen, fp );
fclose( fp );
}
用浏览器打开c:/test.htm, 选择浏览器的编码为 BIG5,即可看到字符串的繁体版本。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: