社区
C++ Builder
帖子详情
简体中文和繁体中文件的互换
kinglh
2004-09-02 11:33:19
在BCB中能不能实现简体中文和繁体中文件的互换?
请大家来讲解一下.
讲得越细越好.
最好有点代码.
...全文
190
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类,用于实现这种转换功能。这类函数通常会基于字典或者编码映射表,将一种字符集转换为另一种。 在PHP中,没有内置的简...
简体中文
和
繁体中文
互换
的php函数类.zip
总的来说,这个"
简体中文
和
繁体中文
互换
的php函数类"为开发者提供了一种高效、方便的工具,简化了在PHP环境中处理中文编码转换的复杂性,提高了代码的可读性和可维护性。如果你经常需要处理这种类型的转换问题,这个...
javascript 简体繁体
互换
在JavaScript编程中,简体与
繁体中文
的
互换
是一个常见的需求,特别是在处理多语言网站或者需要用户界面根据地区偏好动态调整的场景下。本文将详细介绍如何使用JavaScript实现这一功能,包括通过A链接和button按钮两...
UTF8文
件
简体、繁体
互换
本项目"UTF8文
件
简体、繁体
互换
"是基于C#.NET 2.0平台实现的一个工具,用于在UTF8编码的文
件
中进行
简体中文
和
繁体中文
的转换。 首先,我们需要了解UTF8编码的基本原理。UTF8是一种变长编码方式,它将每个Unicode...
汉字简体繁体参照表(数据库)
JSON文
件
中,简繁体汉字对照表将被表示为键值对的形式,例如{"简体": "简", "繁体": "簡"}。这种格式适合在网络传输和API交互中使用。 3. CSV(Comma Separated Values): CSV是一种通用的文
件
格式,用于存储表格...
C++ Builder
13,871
社区成员
102,693
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章