NumArray(0.1.2,3.4,5.6,7.8,9)
ChsArray(“零”、“壹”、“二”、“三”、“四”、“五”、“六”、“七”、“八”、“九”)
然後寫代碼判斷每壹位的值,在對應的整數數組中找到下標,從漢字數組中得到對應下標的漢字。
如果要把345換算成345。然後我給妳壹個函數,妳可以直接調用它
函數TForm1。FNumToChinese(Const n:Real):String;
常數
CHS num:WideString =‘0123456789-人民幣壹百億元壹角整‘;
CHS char:Array【0..1, 0..12】的字符串=
(
(“零元”、“零百”、“零億”、“零千”、“零萬”、“零億”、“零萬”、“零億”、“零零”、“零億”、“零億”、“零億”),
(“元”,“零”,“零”,“零”,“萬”,“億”,“億”,“零”,“零”,“萬”,“億”,“元”)
);
定義變量
I:整數;
StrNum,StrTemp:WideString;
開始
結果:=““;
StrNum:= Format(‘% 15d‘,【Round(n * 100)】);
對於i := 0到14 do
開始
StrTemp:= Copy(StrNum,i+1,1);
如果StrTemp = R_SPACE那麽
繼續
其他
Result:= Result+CHS num【StrToInt(StrTemp)+1】+R _ SPACE+CHS num【I+13】+R _ SPACE;
結束;
對於i:= 0到12 do
開始
Result:= string place(Result,CHS char【0,I】,CHS char【1,I】,【rfReplaceAll】);
如果Pos(‘零’,結果)= 0,則。
結果:= StringReplace(結果,‘零角度‘,‘零‘,【rfReplaceAll】)
其他
Result:= string place(Result,‘零角度‘,‘整數‘,【rfReplaceAll】);
Result:= string place(Result,zero,‘‘,【rfReplaceAll】);
結束;
結束;