社区
C++ Builder
帖子详情
简体中文和繁体中文件的互换
kinglh
2004-09-02 11:33:19
在BCB中能不能实现简体中文和繁体中文件的互换?
请大家来讲解一下.
讲得越细越好.
最好有点代码.
...全文
191
11
打赏
收藏
简体中文和繁体中文件的互换
在BCB中能不能实现简体中文和繁体中文件的互换? 请大家来讲解一下. 讲得越细越好. 最好有点代码.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
binbin
2004-09-04
打赏
举报
回复
有些字没有一一对应的.
kinglh
2004-09-04
打赏
举报
回复
好的!! 谢谢!!
EraserPeople
2004-09-03
打赏
举报
回复
最好还是找个繁体的win2000什么的装上试试,这样才保险,
如果怕烦可以虚拟一个系统,virtual PC,网上有下的
EraserPeople
2004-09-03
打赏
举报
回复
南极星或是中文之星或是相关的软件
(南极星好像在2000下不能用)
kinglh
2004-09-03
打赏
举报
回复
原来是这样!! 我这里是简体机!
有没有办法在简体机上简敏互换!
还是谢谢你 EraserPeople(橡皮人) 非常感谢!
EraserPeople
2004-09-02
打赏
举报
回复
Gb2Big转出来的字在简体机上看当然是乱码了,你得找一个繁体环境,我们公司的软件就是简体繁体两个版本,这都是我的原码,错是一定不会错的.可能函数用法上不同/
kinglh
2004-09-02
打赏
举报
回复
void GB2312ToUTF8(char *srcbuf, char *desbuf)
void UTF8ToGB2312(char *srcbuf, char *desbuf)
void Gb2Big(char *srcstr, char *desstr)
void Big2Gb(char *srcstr, char *desstr)
我用了Gb2Big,Big2Gb这两个! 转换出来的是乱码
char *p = "欧洲外围" ;
char l[256] ;
Big2Gb(p,l);
Edit1->Text = l;
请EraserPeople(橡皮人) 帮我看看那里出错了!~~~
kinglh
2004-09-02
打赏
举报
回复
EraserPeople(橡皮人)
String Gb2Big( String sGb )
这个函数我用了,出现乱码~
EraserPeople
2004-09-02
打赏
举报
回复
//乱乱的是注释,不用理它
void GB2312ToUTF8(char *srcbuf, char *desbuf)
{
// int nLen = CodePageConvert(CP_ACP,_T("±ê×¼"),2,CP_UTF8,lpOut);
//Ò»¶ÎUTF-8±àÂë
WCHAR* strA;
//char tbuf[3];
int len=MultiByteToWideChar(CP_ACP,0,srcbuf,-1,NULL,0);
strA=new WCHAR[len];
MultiByteToWideChar(CP_ACP,0,srcbuf,-1,strA,len);
len=WideCharToMultiByte(CP_UTF8,0,strA,-1,NULL,0,NULL,NULL);
char *strB=new char[len];
WideCharToMultiByte(CP_UTF8,0,strA,-1,strB,len,NULL,NULL);
//strB¼´ÎªËùÇó
strcpy(desbuf,strB);
delete []strA;
delete []strB;
return ;//len-1;
}
void UTF8ToGB2312(char *srcbuf, char *desbuf)
{
//int nLen = CodePageConvert(CP_ACP,_T("±ê×¼"),2,CP_UTF8,lpOut);
//Ò»¶ÎUTF-8±àÂë
WCHAR* strA;
int len=MultiByteToWideChar(CP_UTF8,0,desbuf,-1,NULL,0); //CP_ACP
strA=new WCHAR[len];
MultiByteToWideChar(CP_UTF8,0,desbuf,-1,strA,len);
len=WideCharToMultiByte(CP_ACP ,0,strA,-1,NULL,0,NULL,NULL); //CP_UTF8
char *strB=new char[len];
WideCharToMultiByte(CP_ACP ,0,strA,-1,strB,len,NULL,NULL);
//strB¼´ÎªËùÇó
strcpy(desbuf,strB);
delete []strA;
delete []strB;
}
void Gb2Big(char *srcstr, char *desstr)
{
char* pszGbt=NULL; //Gb±àÂëµÄ·±Ìå×Ö·û
char* pszGbs=NULL; //Gb±àÂëµÄ¼òÌå×Ö·û
wchar_t* wszUnicode=NULL; //Unicode±àÂëµÄ×Ö·û
char* pszBig5=NULL; //Big5±àÂëµÄ×Ö·û
int iLen=0; //ÐèҪת»»µÄ×Ö·ûÊý
pszGbs=srcstr; //¶ÁÈëÐèҪת»»µÄ×Ö·û²ÎÊý
//¼ÆËãת»»µÄ×Ö·ûÊý
iLen=MultiByteToWideChar (936, 0, pszGbs, -1, NULL,0) ;
//¸øpszGbt·ÖÅäÄÚ´æ
pszGbt=new char[iLen*2+1];
//ת»»GbÂë¼òÌåµ½GbÂë·±Ì壬ʹÓÃAPIº¯ÊýLCMapString
LCMapString(0x0804,LCMAP_TRADITIONAL_CHINESE, pszGbs, -1, pszGbt, iLen*2);
//¸øwszUnicode·ÖÅäÄÚ´æ
wszUnicode=new wchar_t[iLen+1];
//ת»»GbÂëµ½UnicodeÂ룬ʹÓÃÁËAPIº¯ÊýMultiByteToWideChar
MultiByteToWideChar (936, 0, pszGbt, -1, wszUnicode,iLen);
//¼ÆËãת»»µÄ×Ö·ûÊý
iLen=WideCharToMultiByte (950, 0, (PWSTR) wszUnicode, -1, NULL,0, NULL, NULL) ;
//¸øpszBig5·ÖÅäÄÚ´æ
pszBig5=new char[iLen+1];
//ת»»UnicodeÂëµ½Big5Â룬ʹÓÃAPIº¯ÊýWideCharToMultiByte
WideCharToMultiByte (950, 0, (PWSTR) wszUnicode, -1, pszBig5,iLen, NULL, NULL) ;
//·µ»ØBig5Âë×Ö·û
strcpy(desstr,pszBig5);
//ÊÍ·ÅÄÚ´æ
delete [] wszUnicode;
delete [] pszGbt;
delete [] pszBig5;
}
void Big2Gb(char *srcstr, char *desstr)
{
char* pszBig5=NULL; //Big5±àÂëµÄ×Ö·û
wchar_t* wszUnicode=NULL; //Unicode±àÂëµÄ×Ö·û
char* pszGbt=NULL; //Gb±àÂëµÄ·±Ìå×Ö·û
char* pszGbs=NULL; //Gb±àÂëµÄ¼òÌå×Ö·û
int iLen=0; //ÐèҪת»»µÄ×Ö·ûÊý
pszBig5=srcstr; //¶ÁÈëÐèҪת»»µÄ×Ö·û²ÎÊý
//¼ÆËãת»»µÄ×Ö·ûÊý
iLen=MultiByteToWideChar (950, 0, pszBig5, -1, NULL,0) ;
//¸øwszUnicode·ÖÅäÄÚ´æ
wszUnicode=new wchar_t[iLen+1];
//ת»»Big5Âëµ½UnicodeÂ룬ʹÓÃÁËAPIº¯ÊýMultiByteToWideChar
MultiByteToWideChar (950, 0, pszBig5, -1, wszUnicode,iLen);
//¼ÆËãת»»µÄ×Ö·ûÊý
iLen=WideCharToMultiByte (936, 0, (PWSTR) wszUnicode, -1, NULL,0, NULL, NULL) ;
//¸øpszGbt·ÖÅäÄÚ´æ
pszGbt=new char[iLen+1];
//¸øpszGbs·ÖÅäÄÚ´æ
pszGbs=new char[iLen+1];
//ת»»UnicodeÂëµ½GbÂë·±Ì壬ʹÓÃAPIº¯ÊýWideCharToMultiByte
WideCharToMultiByte (936, 0, (PWSTR) wszUnicode, -1, pszGbt,iLen, NULL, NULL) ;
//ת»»GbÂë·±Ìåµ½GbÂë¼òÌ壬ʹÓÃAPIº¯ÊýLCMapString
LCMapString(0x0804,LCMAP_SIMPLIFIED_CHINESE, pszGbt, -1, pszGbs, iLen);
//·µ»ØGbÂë¼òÌå×Ö·û
strcpy(desstr,pszGbs);
//ÊÍ·ÅÄÚ´æ
delete [] wszUnicode;
delete [] pszGbt;
delete [] pszGbs;
}
kinglh
2004-09-02
打赏
举报
回复
上面多一了个字. 不好意思! ^.^
是简体中文和繁体中文的互换.
EraserPeople
2004-09-02
打赏
举报
回复
String Gb2Big( String sGb )
{
char* pszGbt=NULL; //Gb±àÂëµÄ·±Ìå×Ö·û
char* pszGbs=NULL; //Gb±àÂëµÄ¼òÌå×Ö·û
wchar_t* wszUnicode=NULL; //Unicode±àÂëµÄ×Ö·û
char* pszBig5=NULL; //Big5±àÂëµÄ×Ö·û
String sBig5; //·µ»ØµÄ×Ö·û´®
int iLen=0; //ÐèҪת»»µÄ×Ö·ûÊý
pszGbs=sGb.c_str(); //¶ÁÈëÐèҪת»»µÄ×Ö·û²ÎÊý
//¼ÆËãת»»µÄ×Ö·ûÊý
iLen=MultiByteToWideChar (936, 0, pszGbs, -1, NULL,0) ;
//¸øpszGbt·ÖÅäÄÚ´æ
pszGbt=new char[iLen*2+1];
//ת»»GbÂë¼òÌåµ½GbÂë·±Ì壬ʹÓÃAPIº¯ÊýLCMapString
LCMapString(0x0804,LCMAP_TRADITIONAL_CHINESE, pszGbs, -1, pszGbt, iLen*2);
//¸øwszUnicode·ÖÅäÄÚ´æ
wszUnicode=new wchar_t[iLen+1];
//ת»»GbÂëµ½UnicodeÂ룬ʹÓÃÁËAPIº¯ÊýMultiByteToWideChar
MultiByteToWideChar (936, 0, pszGbt, -1, wszUnicode,iLen);
//¼ÆËãת»»µÄ×Ö·ûÊý
iLen=WideCharToMultiByte (950, 0, (PWSTR) wszUnicode, -1, NULL,0, NULL, NULL) ;
//¸øpszBig5·ÖÅäÄÚ´æ
pszBig5=new char[iLen+1];
//ת»»UnicodeÂëµ½Big5Â룬ʹÓÃAPIº¯ÊýWideCharToMultiByte
WideCharToMultiByte (950, 0, (PWSTR) wszUnicode, -1, pszBig5,iLen, NULL, NULL) ;
//·µ»ØBig5Âë×Ö·û
sBig5=pszBig5;
//ÊÍ·ÅÄÚ´æ
delete [] wszUnicode;
delete [] pszGbt;
delete [] pszBig5;
return sBig5;
}
简体中文
和
繁体中文
互换
的php函数类
一个
简体中文
和
繁体中文
互换
的php函数类,可以实现
简体中文
汉字和
繁体中文
字的相互转换
简体中文
和
繁体中文
互换
的php函数类.zip
介绍一个
简体中文
和
繁体中文
互换
的php函数类,可以实现
简体中文
汉字和
繁体中文
字的相互转换,供朋友们下载参考,如果朋友们有更好的此类文
件
可以上传与我们共同学习分享。
javascript 简体繁体
互换
javascript 简体繁体
互换
包括A链接与button按钮2种写法
UTF8文
件
简体、繁体
互换
c#.net2.0实现的UTF8文
件
简体、繁体
互换
汉字简体繁体参照表(数据库)
汉字简体繁体转换映射表 文
件
类型:sql、json、csv、xls 数据量:≈4792条 资源大小:74.58KB
C++ Builder
13,871
社区成员
102,693
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章