日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

FastReport人民币大写转换

發(fā)布時間:2023/12/13 综合教程 40 生活家
生活随笔 收集整理的這篇文章主要介紹了 FastReport人民币大写转换 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

function MoneyToCharacter(Money:real):string; //數(shù)字轉(zhuǎn)換為中文大寫
var
temp:string;
resu:string;
i,j:integer;
len:integer;
Num:array[0..9] of string;
A:array[0..13] of string;
begin
Num[0]:='零';
num[1]:='壹';
Num[2]:='貳';
num[3]:='叁';
Num[4]:='肆';
num[5]:='伍';
Num[6]:='陸';
num[7]:='柒';
Num[8]:='捌';
num[9]:='玖';
a[0]:='分';
a[1]:='角';
a[2]:='元';
a[3]:='拾';
a[4]:='佰';
a[5]:='仟';
a[6]:='萬';
a[7]:='拾';
a[8]:='佰';
a[9]:='仟';
a[10]:='億';
a[11]:='拾';
a[12]:='佰';
a[13]:='仟';

temp:=trim(inttostr(round(money*100)));
len:=length(temp);
resu:='';
if (len>13) or (len=0) then
begin
exit;
end;
for i:=1 to len do
begin
j:=strtoint(copy(temp,i,1));
resu:=resu+num[j]+a[len-i];
end;
result:=resu;
end;

調(diào)用方法:

Memo2.text:=MoneyToCharacter(sum(<frxDBDataset1."Amount">));

或 MoneyToCharacter(3654.63);

另:

void fnFloatToRMB(float Money)
{
String sRMBUnit="分角元拾佰仟萬拾佰仟億拾百";
String sRMBNumber="零壹貳叁肆伍陸柒捌玖";
String sMoney,sRMBMoney,sChar,sNumber,sUnit;
int iMoneyLength,iPosDecimal;
float fAfterDecimal; //小數(shù)部分
int iBeforeDecimal; //整數(shù)部分
bool bIsZeroEnd;

iBeforeDecimal=Money;
fAfterDecimal=fabs(Money-iBeforeDecimal);
if(fAfterDecimal > 0 || Money == 0)
{
sRMBMoney="";
}
else
{
sRMBMoney="整";
}

sMoney=FormatFloat("0.00",Money);
//刪除小數(shù)點
iPosDecimal =sMoney.Pos(".");
if(iPosDecimal > 0)
sMoney=sMoney.Delete(iPosDecimal,1);
iMoneyLength=sMoney.Length();

int i=0;
bIsZeroEnd=true;
while(iMoneyLength>0)
{
i++;
sChar=sMoney.SubString(iMoneyLength,1);
if(sChar=="-")
{
sNumber="負";
sUnit="";
}
else
{
sNumber=sRMBNumber.SubString(StrToInt(sChar)*2+1,2);
sUnit=sRMBUnit.SubString(i*2-1,2);
if(sChar=="0")
{
if(i!=3 && i!=7 && i!=11) sUnit="";
if(bIsZeroEnd || i==3 || i==7 || i==11) sNumber="";
if(fabs(Money)<1 && i<=3){sUnit="";sNumber="";}
bIsZeroEnd=true;
}
else bIsZeroEnd=false;
if(sChar=="1")
{
if((i==sMoney.Length() || (i==sMoney.Length()-1 && Money<0))
&& (i==2|| i==4 || i==8))
sNumber="";
}
}
sRMBMoney=sNumber+sUnit+sRMBMoney;
iMoneyLength--;
}
return sRMBMoney;
}


總結(jié)

以上是生活随笔為你收集整理的FastReport人民币大写转换的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。