在Delphi7中用的好好的,在DELPHI2009中中文拼音首字获取函数怎么不能用啦?大家帮我看看!function getPY(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';
$D189..$D4D0:result:='Y';
$D4D1..$D7F9:result:='Z';
ELSE
RESULT:=char(32);
end;
end;
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';
$D189..$D4D0:result:='Y';
$D4D1..$D7F9:result:='Z';
ELSE
RESULT:=char(32);
end;
end;
解决方案 »
- 如何能复制独占模式下的数据库文件
- 我有一个CHAR类型的字段,请问如何对这个字段求和,急急!
- 如何用Delphi编程,实现制作一个DOS启动盘
- 求助重已有的网页源代码文件中分离出超链接
- 怎样自动求几个字段的和?在线等!分不够可加!
- access查询问题
- 怎样让键盘上某个按键被按时执行一个procedure??
- 强烈建议新开星星版块,裤头菜鸟禁入,或裤头少的菜鸟禁入!!
- 夸克兄请进来
- DELPHI7开发的程序可以运行 xp 32 xp64 win7 32 WIN7 64 吗
- TcxTreeList如何使某一行的列不能选中?
- Ehlib的Demo1里,DBGridEh1的Vendor Number列STFilter什么都没指定,但在设计期就有下拉箭头,是如何做到的?
GB2312String = type AnsiString(936);function foo(const S: GB2312String): Char;
...
function foo(const S: GB2312String): Char; 要改为function foo(const S: GB2312String): AnsiChar;
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';
$D189..$D4D0:result:='Y';
$D4D1..$D7F9:result:='Z';
ELSE
RESULT:=char(32);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
s,s1,py:string;
begin
s:=Edit1.Text;
i:=0;
j:= length(s);
Edit2.Text:='';
for i := 0 to j do
begin
s1:=s[i];
py:=getpy(s1);
Edit2.Text:=edit2.Text+py;
end;
end;
function getPY(hzchar:AnsiString):AnsiChar;
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';
$D189..$D4D0:result:='Y';
$D4D1..$D7F9:result:='Z';
ELSE
RESULT:=AnsiChar(32);
end;
end;
http://topic.csdn.net/u/20090311/13/fd119d62-91eb-45c9-94b0-896c221437f7.html