Dephi将金额转换的大写金额

本文介绍了一个实用的函数,该函数能够将输入的小写金额数值转换为对应的大写金额表示形式,适用于财务软件中金额显示的需求。
{----------------------------------------------------------------------------------------------------------------------------
  函数功能:将金额转换的大写金额。
  入口参数:small 小写金额
  返 回 值:大写金额
}
function 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;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值