CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

输入汉字后,如何将汉字的字母生成出来?

楼主wwyf(网际闲人)2003-08-02 16:52:04 在 Delphi / 数据库相关 提问

输入汉字后,如何将汉字的字母生成出来?  
  如:如果输入汉字“我们”,则为“WM”  
  谢谢  
   
  另外,ord('我')有错吗?  
  如何得到字母的ascll   码???函数为?? 问题点数:10、回复次数:1Top

1 楼ljmanage(过客)回复于 2003-08-02 18:24:41 得分 10

将汉字翻译成拼音简写          
           
  在数据库输入中,怎样使"中文名称"输入翻译成"简码"存入另一字段?以便以后查询使用?  
   
  如:  
   
  "工资处"译成"GZC"  
   
     
   
  //这个函数拿去用(我刚写好,已测试通过)  
   
  function   GetHzPy(const   AHzStr:   string):   string;  
   
  const  
   
  ChinaCode:   array[0..25,   0..1]   of   Integer   =   ((1601,   1636),   (1637,   1832),   (1833,   2077),  
   
  (2078,   2273),   (2274,   2301),   (2302,   2432),   (2433,   2593),   (2594,   2786),   (9999,   0000),  
   
  (2787,   3105),   (3106,   3211),   (3212,   3471),   (3472,   3634),   (3635,   3722),   (3723,   3729),  
   
  (3730,   3857),   (3858,   4026),   (4027,   4085),   (4086,   4389),   (4390,   4557),   (9999,   0000),  
   
  (9999,   0000),   (4558,   4683),   (4684,   4924),   (4925,   5248),   (5249,   5589));  
   
  var  
   
  i,   j,   HzOrd:   integer;  
   
  Hz:   string[2];  
   
  begin  
   
  i   :=   1;  
   
  while   i   <=   Length(AHzStr)   do  
   
  begin  
   
  if   (AHzStr[i]   >=   #160)   and   (AHzStr[i   +   1]   >=   #160)   then  
   
  begin  
   
  HzOrd   :=   (Ord(AHzStr[i])   -   160)   *   100   +   Ord(AHzStr[i   +   1])   -   160;  
   
  for   j   :=   0   to   25   do  
   
  begin  
   
  if   (HzOrd   >=   ChinaCode[j][0])   and   (HzOrd   <=   ChinaCode[j][1])   then  
   
  begin  
   
  Result   :=   Result   +   char(byte('A')   +   j);  
   
  break;  
   
  end;  
   
  end;  
   
  Inc(i);  
   
  end   else   Result   :=   Result   +   AHzStr[i];  
   
  Inc(i);  
   
  end;  
   
  end;  
   
  ///////////////////////////////////////  
   
  这个函数用户识别单独汉字的简码   字符串的简码函数请自行制作  
   
  function   GetPYIndexChar(hzchar:string):char;  
   
  begin  
   
  case   WORD(hzchar[1])   shl   8   +   WORD(hzchar[2])   of  
   
  $B0A1..$B0C4   :   result   :=   'A';  
   
  $B0C5..$B2C0   :   result   :=   'B';  
   
  $B2C1..$B4ED   :   result   :=   'C';  
   
  $B4EE..$B6E9   :   result   :=   'D';  
   
  $B6EA..$B7A1   :   result   :=   'E';  
   
  $B7A2..$B8C0   :   result   :=   'F';  
   
  $B8C1..$B9FD   :   result   :=   'G';  
   
  $B9FE..$BBF6   :   result   :=   'H';  
   
  $BBF7..$BFA5   :   result   :=   'J';  
   
  $BFA6..$C0AB   :   result   :=   'K';  
   
  $C0AC..$C2E7   :   result   :=   'L';  
   
  $C2E8..$C4C2   :   result   :=   'M';  
   
  $C4C3..$C5B5   :   result   :=   'N';  
   
  $C5B6..$C5BD   :   result   :=   'O';  
   
  $C5BE..$C6D9   :   result   :=   'P';  
   
  $C6DA..$C8BA   :   result   :=   'Q';  
   
  $C8BB..$C8F5   :   result   :=   'R';  
   
  $C8F6..$CBF9   :   result   :=   'S';  
   
  $CBFA..$CDD9   :   result   :=   'T';  
   
  $CDDA..$CEF3   :   result   :=   'W';  
   
  $CEF4..$D188   :   result   :=   'X';  
   
  $D1B9..$D4D0   :   result   :=   'Y';  
   
  $D4D1..$D7F9   :   result   :=   'Z';  
   
  else  
   
  result   :=   char(0);  
   
  end;  
   
  end;  
     
         
  Top

相关问题

  • 汉字列表生成和汉字首字母查询问题
  • 如何获取输入汉字的拼音的首字母?
  • 难问题: 如何取得输入汉字的拼音字母?
  • 如何获取输入汉字的拼音的首字母?
  • 给出字母, 如何得到汉字与汉字词组?? (拼音输入或五笔输入)(1000分相求)...
  • 给出字母, 如何得到汉字与汉字词组?? (拼音输入或五笔输入)(1000分相求)...
  • 在comboBox中输入汉字的首字母 检索自己定义的字库
  • 在comboBox中输入汉字的首字母 检索自己定义的字库
  • 我输入一个汉字,如何才能知道这个汉字的首字母?(如“范---F”)
  • 如何控制输入框只能输入字母或者数字或者汉字?

关键词

  • 汉字
  • 字母
  • 输入

得分解答快速导航

  • 帖主:wwyf
  • ljmanage

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

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