Delphi中实现金额小写转化成大写
来源:互联网 发布:来钱快收银机软件 编辑:程序博客网 时间:2024/05/22 02:16
function NumToChar(const n: Real): string; //可以到万亿,并且可以随便扩大范围
const cnum: array[0..9] of string = ('零','壹','贰','叁','肆','伍','陆','柒','捌','玖');
cunit: array[0..14] of string = ('万','仟','佰','拾','亿','仟','佰','拾','万','仟','佰','拾','元','角','分');
var
i : Integer;
snum,stemp : string;
begin
result :='';
snum := format('%15d',[round(n * 100)]);
for i := 0 to 14 do
begin
stemp := copy(snum,i+1,1);
if stemp=' ' then continue
else result := result + cnum[strtoint(stemp)] + cunit[i];
end;
//去掉多余的零
Result := StringReplace(Result, '零元','元', [rfReplaceAll]);
Result := StringReplace(Result, '零拾', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零佰', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零仟', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零万', '万', [rfReplaceAll]);
Result := StringReplace(Result, '零亿', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '亿万', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '零零零','零', [rfReplaceAll]);
Result := StringReplace(Result, '零零', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零万', '万', [rfReplaceAll]);
Result := StringReplace(Result, '零亿', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '亿万', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '零元', '元', [rfReplaceAll]);
if pos('零分',result)=0 then Result := StringReplace(Result,'零角','零', [rfReplaceAll])
else Result := StringReplace(Result,'零角','整', [rfReplaceAll]);
Result := StringReplace(Result,'零分','', [rfReplaceAll]);
end;
const cnum: array[0..9] of string = ('零','壹','贰','叁','肆','伍','陆','柒','捌','玖');
cunit: array[0..14] of string = ('万','仟','佰','拾','亿','仟','佰','拾','万','仟','佰','拾','元','角','分');
var
i : Integer;
snum,stemp : string;
begin
result :='';
snum := format('%15d',[round(n * 100)]);
for i := 0 to 14 do
begin
stemp := copy(snum,i+1,1);
if stemp=' ' then continue
else result := result + cnum[strtoint(stemp)] + cunit[i];
end;
//去掉多余的零
Result := StringReplace(Result, '零元','元', [rfReplaceAll]);
Result := StringReplace(Result, '零拾', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零佰', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零仟', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零万', '万', [rfReplaceAll]);
Result := StringReplace(Result, '零亿', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '亿万', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '零零零','零', [rfReplaceAll]);
Result := StringReplace(Result, '零零', '零', [rfReplaceAll]);
Result := StringReplace(Result, '零万', '万', [rfReplaceAll]);
Result := StringReplace(Result, '零亿', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '亿万', '亿', [rfReplaceAll]);
Result := StringReplace(Result, '零元', '元', [rfReplaceAll]);
if pos('零分',result)=0 then Result := StringReplace(Result,'零角','零', [rfReplaceAll])
else Result := StringReplace(Result,'零角','整', [rfReplaceAll]);
Result := StringReplace(Result,'零分','', [rfReplaceAll]);
end;
- Delphi中实现金额小写转化成大写
- 将金额小写转化成汉字大写
- 小写金额转化为大写
- 小写金额转化成大写金额java代码
- 将金额小写转化成汉字大写(javascript)
- 小写金额转换成大写金额(JAVA实现)
- 将小写金额转化为大写
- 小写金额自动转化为大写,js
- java实现小写金额转换大写金额
- 大写金额转换成小写
- 小写金额转换成大写
- 小写金额转换成大写
- 小写金额转换成大写
- 小写金额转换成大写
- 小写金额转换成大写
- ASP小写金额转换成大写金额
- 小写金额转换成大写金额
- 小写金额转换成中文大写金额
- 我的程序员守则
- javamail send mail with 附件
- 英语妙句
- IBM大客户GE改购戴尔PC 联想股价应声下跌
- C#读取中文文本文件
- Delphi中实现金额小写转化成大写
- 刻录时光
- 如何在VB中操作EXCEL(一段代码,两个可以使用的过程)
- Ant介绍以及基本使用指南
- 分享:xmlhttp的get/post方式及相应Browser/Server端的处理
- 学习笔记,VB.NET使用DirectSound9 (1) 简单播放
- Excel 2003的XML文件格式
- 阻碍职场成功的行为模式12式(ZT)
- 和同事相处勿急躁 (ZT)