CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

请问如何在VB中判断textbox中输入的是简体字还是繁体字,因想要禁止简体输入

楼主shohoku_11(Azure)2006-07-04 10:50:00 在 VB / 基础类 提问

请问如何在VB中判断textbox中输入的是简体字还是繁体字,因想要禁止简体输入 问题点数:50、回复次数:4Top

1 楼aspower_(敬个礼 握个手 大家都素好朋友!)回复于 2006-07-04 10:59:42 得分 0

GB/BIG5内码转换和辨别  
   
  VB提供的StrConv这个函数,完全可以解决简繁体的转换问题。下面是一个简繁体的转换  
  的函数,可以实现简体到繁体、繁体到简体的相互转化。  
   
  '******   简繁体互换   GB-->Unicode-->BIG5    
  Or   BIG5-->Unicode-->GB   *****************  
  '参数sStr为需要转换的文本  
  '参数iConver为要转化的类型,为1时表示繁体到简体的转换,为2时表示简体到繁体的  
  转换  
  Function   GBBIG5(sStr   As   String,   iConver   As   Integer)   As   String  
  On   Error   Resume   Next  
  Dim   STR  
  If   iConver   =   1   Then   'BIG5-->GB  
  STR   =   StrConv(sStr,   vbFromUnicode,   &H804)  
  GBBIG5   =   StrConv(STR,   vbUnicode,   &H404)  
  ElseIf   iConver   =   2   Then   'GB-->BIG5  
  STR   =   StrConv(sStr,   vbFromUnicode,   &H404)  
  GBBIG5   =   StrConv(STR,   vbUnicode,   &H804)  
  End   If  
   
  End   Function  
   
  注:使用这一函数,结果实际上显示的仍是繁体!所以我们只能称为内码转换  
   
  如何判断文本是GB还是Big5  
   
  1.   GB   code的内码的两个字节都是从A0H   -   FEH之间的  
   
  2.   BIG   code的内码的第一个字节是80H   -   FFH,第二个字节是00H   -   FFH    
   
  所以,你要浏览全文,看看是否有第二个字节是小于7FH的汉字,如果有的话,一般是BIG   code的。  
  当然也有特殊情况,不过非常少见的  
  Top

2 楼aspower_(敬个礼 握个手 大家都素好朋友!)回复于 2006-07-04 11:00:25 得分 25

如何判断文本是GB还是Big5  
  如何判断文本是GB还是Big5  
  一   般   是   这   样   辨   别   的   :    
   
  1.   GB   code的   内   码   的   两   个   字   节   都   是   从   A0H   -   FEH之   间   的    
   
  2.   BIG   code   的   内   码   的   第   一   个   字   节   是   80H   -   FFH,   第   二   个   字   节   是   00H   -   FFH    
   
  所   以   ,   你   要   浏   览   全   文   ,   看   看   是   否   有   第   二   个   字   节   是   小   于   7FH的   汉   字   ,   如   果   有   的   话   ,   一   般   是BIG   code的   。   当   然   也   有   特   殊   情   况   ,   不   过   非   常   少   见   的    
  Top

3 楼fxy_2002(阿勇)回复于 2006-07-04 12:48:25 得分 25

通过判断BIG5第二个字节的方法不可靠,我试过。  
  www.china-askpro.com/msg6/qa41.shtml  
   
  50多个GB文件,识别时错了10来个(识别成BIG5)。  
   
  不过确实没有太好的办法,网上还有一种权重法,需要字数80以上才比较准确。  
  www.ibiblio.org/pub/packages/ccic/software/data/chrecog.gb.html  
  Top

4 楼shohoku_11(Azure)回复于 2006-07-06 04:29:59 得分 0

嗯,我也觉得这个方法好像在判别准确率要求高的场合不太适用。但还是感谢两位!Top

相关问题

关键词

得分解答快速导航

  • 帖主:shohoku_11
  • aspower_
  • fxy_2002

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo