gmc InspDesigner 金额中文转化脚本
脚本:
/**
*
@
des
cription:金额小写转中文大写
*
@
aut
hor: Jacob.Y
*
@
da
te: 2020-06-27
**/
//Double je=100200000.75;
//规范数值格式(保留小数点后2位):
//String a=(je*600).toStringWithoutE(20).left(12)+(je*800).toStringWithoutE(20).left(12)+(je*500).toStringWithoutE(20).left(12)+je.toStringWithoutE(20);
String a=je;
if(a.contains("."))
a=a.Part[0,"."]+"."+(a+"0").Part[1,"."].left(2);
else a=a+".00";
a.replace(".","");
//数值转大写
String szdx="零壹贰叁肆伍陆柒捌玖";
String jedx="";
for(Int i=0;i<(a.Length);i++)
jedx=jedx+szdx.mid(a.mid(i,1).toInt(),1);
//添加单位转大写
String unit="仟佰拾极仟佰拾载仟佰拾正仟佰拾涧仟佰拾沟仟佰拾穣仟佰拾秭仟佰拾垓仟佰拾京仟佰拾兆仟佰拾亿仟佰拾万仟佰拾圆角分";
unit=unit.right(jedx.Length);
String dx="";
for(Int i=0;i<jedx.Length;i++)
dx=dx+jedx.mid(i,1)+unit.mid(i,1);
//整理去零换整
String th="仟佰拾角零零零零零零零零零零零零零零零零零零零零零零零零零零零零零零零零零";
String tg="极载正涧沟穣秭垓京兆亿万圆";
String tf="极载正涧沟穣秭垓京兆亿万";
dx.replace("零角零分","整");
dx.replace("零分","整");
for(Int i=0;i<th.Length;i++)
dx.replace("零"+th.mid(i,1),"零");
for(Int i=0;i<th.Length;i++)
dx.replace("零"+tg.mid(i,1),tg.mid(i,1)+"零");
for(Int i=1;i<tf.Length;i++)
dx.replace("零"+tf.mid(i,1),"");
dx.replace("零圆","圆");
dx.replace("零零","零");
//输出返回值
return "人民币"+dx;