- 中查找“小写金额转换”更多相关内容
- 中查找“小写金额转换”更多相关内容
- ·上一篇文章:用Delphi实现身份证15位升18位的算法
- ·下一篇文章:创建闪烁图标
小写金额转换
function Tform1.SmallTOBig(small:real):string;
var SmallMonth,BigMonth:string;
wei1,qianwei1:string[2];
qianwei,dianweizhi,qian:integer;
begin
{------- 修改参数令值更精确 -------}
{小数点后的位置,需要的话也可以改动-2值}
qianwei:=-2;
{转换成货币形式,需要的话小数点后加多几个零}
Smallmonth:=formatfloat(''0.00'',small);
{---------------------------------}
dianweizhi :=pos(''.'',Smallmonth);{小数点的位置}
{循环小写货币的每一位,从小写的右边位置到左边}
for qian:=length(Smallmonth) downto 1 do
begin
{如果读到的不是小数点就继续}
if qian<>dianweizhi then
begin
{位置上的数转换成大写}
case strtoint(copy(Smallmonth,qian,1)) of
1:wei1:=''壹''; 2:wei1:=''贰'';
3:wei1:=''叁''; 4:wei1:=''肆'';
5:wei1:=''伍''; 6:wei1:=''陆'';
7:wei1:=''柒''; 8:wei1:=''捌'';
9:wei1:=''玖''; 0:wei1:=''零'';
end;
{判断大写位置,可以继续增大到real类型的最大值}
case qianwei of
-3:qianwei1:=''厘'';
-2:qianwei1:=''分'';
-1:qianwei1:=''角'';
0 :qianwei1:=''元'';
1 :qianwei1:=''拾'';
2 :qianwei1:=''佰'';
3 :qianwei1:=''千'';
4 :qianwei1:=''万'';
5 :qianwei1:=''拾'';
6 :qianwei1:=''佰'';
7 :qianwei1:=''千'';
8 :qianwei1:=''亿'';
9 :qianwei1:=''十'';
10:qianwei1:=''佰'';
11:qianwei1:=''千'';
end;
inc(qianwei);
BigMonth :=wei1+qianwei1+BigMonth;{组合成大写金额}
end;
end;
SmallTOBig:=BigMonth;
end;
调用如下“edit1.text:=SmallTOBig(1234567890.1234);”他自动默认小数点后两位
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论