delphi 跨平台数字1234等转中文大写
tts播报时,666,888会播报为6百6十六,八百八十八,转成中文六六六后就正常了,
有些客户比较纠结,于是有了这个过程,因要跨平台
procedure NumToChinese(var ss: string);
const
cNum: string = '零一二三四五六七八九';
var
i: Integer;
sNum: string;
begin
for i := Low(ss) to high(ss) do
begin
if ss[i] = '0' then ss[i] := cNum[Low(cNum)]
else if ss[i] = '1' then ss[i] := cNum[Low(cNum)+1]
else if ss[i] = '2' then ss[i] := cNum[Low(cNum)+2]
else if ss[i] = '3' then ss[i] := cNum[Low(cNum)+3]
else if ss[i] = '4' then ss[i] := cNum[Low(cNum)+4]
else if ss[i] = '5' then ss[i] := cNum[Low(cNum)+5]
else if ss[i] = '6' then ss[i] := cNum[Low(cNum)+6]
else if ss[i] = '7' then ss[i] := cNum[Low(cNum)+7]
else if ss[i] = '8' then ss[i] := cNum[Low(cNum)+8]
else if ss[i] = '9' then ss[i] := cNum[Low(cNum)+9]
end;
end;