function SmallToBigStr(Small:DouBle):string; // 小写数字 TO 大写汉字 var SmallMonth,BigMonth:String; wei1,QianWei1:String; wei,QianWei,dianweizhi,qian:integer; T:boolean; begin T:=False; if Small<0 then begin T:=True; Small:=Small*-1; end; 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; 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; if T then Result := '大写:人民币(负)'+BigMonth else Result := '大写:人民币'+BigMonth; end;
var SmallMonth,BigMonth:String;
wei1,QianWei1:String;
wei,QianWei,dianweizhi,qian:integer;
T:boolean;
begin
T:=False;
if Small<0 then
begin
T:=True;
Small:=Small*-1;
end;
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;
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;
if T then Result := '大写:人民币(负)'+BigMonth
else Result := '大写:人民币'+BigMonth;
end;
输出:大写:人民币壹拾万叁仟肆佰叁拾伍元壹角贰分
SmallToBigStr(-123435.12):
输出:大写:人民币(负)壹拾万叁仟肆佰叁拾伍元壹角贰分