来自超级猛料的函数:
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;
Result := LowerCase(Result);//转为小写
end;
调用方法:
Edit1.Text := GetHzPy('青霉素');
showmessage(Edit1.Text);
不错不错!!!
猛啊!
只是拼音首字母吧
我有一个BCB的:
http://community.csdn.net/Expert/topic/5157/5157749.xml?temp=.6221277
改成delphi不难吧
http://www.dullwolf.cn/
去下载汉字转换拼音程序,代码公开的,可以转换成任何程序语言,英文操作系统下好使.
qù xià zǎi hàn zì zhuǎn huàn pīn yīn chéng xù , dài mǎ gōng kāi de , kě yǐ zhuǎn huàn chéng rèn hé chéng xù yǔ yán , yīng wén
cāo zuò xì tǒng xià hǎo shǐ .
支持大部分多音字
zhī chí dà bù fēn duō yīn zì
很长 长远 长久
hěn cháng cháng yuǎn cháng jiǔ
生长 成长
shēng zhǎng chéng zhǎng
zhù fú suǒ yǒu xiōng di jiě mèi , xīn de yī nián , yǒu gèng duō shōu huò
祝福所有兄弟姐妹,新的一年,有更多收获
cún zài wèn tí : -------- hào hē jiǔ 。
存在问题:--------好喝酒。
fēn xī yuán yīn : -------- jiǔ hǎo hē 。
分析原因:--------酒好喝。
zǒng jié jīng yàn : -------- hē jiǔ hǎo 。
总结经验:--------喝酒好。
zhěng gǎi cuò shī : -------- jiǔ hē hǎo 。
整改措施:--------酒喝好。
nǔ lì fāng xiàng : -------- hē hǎo jiǔ 。
努力方向:--------喝好酒。