论坛帮助 |
日历事件 |
![]() |
#1 | ||
|
|||
正式会员
等级: 一袋长老
![]() ![]() ![]() ![]() ![]() |
脚本: /** * @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; 此帖于 2020-06-27 13:13 被 no013 编辑. |
||
![]() |
右列会员因为此帖价值甚高向 no013 表示感谢: |
A-J (2020-06-27)
|
![]() |
#3 | ||
|
|||
正式会员
等级: 一袋长老
![]() ![]() ![]() ![]() ![]() |
* @des cription:金额小写转中文大写修改版 * @aut hor: Jacob.Y * @da te: 2020-06-27 18:00 **/ //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 tg="极载正涧沟穣秭垓京兆亿万"; String unit=""; for(Int i=0;i<tg.Length;i++) unit=unit+"仟佰拾"+tg.mid(i,1); unit=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="仟佰拾角"; dx.replace("零角零分","整"); dx.replace("零分","整"); for(Int i=0;i<th.Length;i++) dx.replace("零"+th.mid(i,1),"零"); for(Int i=0;i<tg.Length;i++) { dx.replace("零零零零"+tg.mid(i,1),"零"); dx.replace("零"+tg.mid(i,1),tg.mid(i,1)+"零"); } dx.replace("零零","零"); dx.replace("零零","零"); for(Int i=0;i<tg.Length;i++) dx.replace("零"+tg.mid(i,1),tg.mid(i,1)+"零"); dx.replace("零零","零"); dx.replace("零零","零"); dx.replace("零圆","圆"); //输出返回值 return "人民币"+dx; |
||
![]() |