中文内码转换类
本源代码遵从gnu无偿提供给读者,无版权限制. 【程序编程相关:通过 HTTP POST 上传文件到服务】
??? 中文分为简体.繁体两种内码,另外还有统一码,如果要在不同码之间转换,需要有一个对应表格,程序编写起来非常繁琐,而且更要有内码对照表格.笔者,在阅读msdn中发现只要妙用multibytetowidechar与lcmapstring两函数,就可以简简单单地实现不同内码的转换.为了让程序员使用更方便,笔者编写了一个cchineseconvertor类,包装了所有中文内码的转换功能.读者可以直接在mfc中加入此类,用起来也非常轻松.详细细节请察看chineseconvertor.h与chineseconvertor.cpp源代码. 【推荐阅读:Eclipse+Tomcat实现Mysq】
? 【扩展信息:PHP 5.0.1 Released!】
赵献宽
#pragma once
#include "afx.h"class cchineseconvertor :
?public cobject{public:?cchineseconvertor(void);?~cchineseconvertor(void);?cstring big52gbksimplified(cstring sztext);?cstring big52gbktraditional(cstring sztext);?cstring gbk2big5(cstring sztext);?lptstr gbksimplified2gbktraditional(cstring szsimplified);?lptstr gbktraditional2gbksimplified(cstring sztraditional);?char *m_pszunknown;
?// 转换到unicode?lpwstr tounicode(cstring szsource, int nencoding);?lptstr tomultibyte(lpwstr szsource, int nencoding);};#include "stdafx.h"
#include "chineseconvertor.h" cchineseconvertor::cchineseconvertor(void){?m_pszunknown = new char[2];?m_pszunknown[0]=´?´;?m_pszunknown[1]=0;}cchineseconvertor::~cchineseconvertor(void)
{?delete m_pszunknown;}cstring cchineseconvertor::big52gbksimplified(cstring sztext)
{?int nlength;?wchar_t *pbuffer;?lpstr presult;?int nresultlength;... 下一页