delphi 精炼的数字转换人民币大写转换代码  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 精炼的数字转换人民币大写转换代码


function MoneyConvert(mmje:real): WideString;
const
  cNum: WideString = '零壹贰叁肆伍陆柒捌玖-万仟佰拾亿仟佰拾万仟佰拾元角分';
        cCha: array[0..1, 0..11] of string =
        (('零仟','零佰','零拾','零零零','零零',
           '零亿','零万','零元','亿万','零角','零分','零整'),
         ( '零','零','零','零','零','亿','万','元','亿','零','整','整'));
var
  i: Integer;
  sNum :WideString;
begin
  Result := '';
  if mmje < 0 then
  begin
    Result := '负';
    mmje := -mmje;
  end;
  sNum := FormatFloat('0',mmje*100);
  for i := 1 to Length(sNum) do
  begin
    Result := Result + cNum[ord(sNum[i])-47] + cNum[26-Length(sNum)+i];
  end;

  for i:= 0 to 11 do // 去掉多余的零
  begin
    Result := StringReplace(result, cCha[0,i], cCha[1,i], [rfReplaceAll]);
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.text:=MoneyConvert(123);
end;

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.041508913040161 seconds