将金额小写转化成汉字大写的实现过程

  • 来源: 互联网 作者: rocket   2008-03-20/11:58
  • 自己写的一个比较丑的程序,但做报表时候有用
      /********************************************************************
      时间:2003.7.31
      作者:千里猪
      功能:将货币数字(阿拉伯数字)(小写)转化成中文(大写)
     
      参数:Num为字符型,小数点之后保留两位,例:Arabia_to_Chinese("1234.06")
      说明:1.目前本转换仅支持到 拾亿(元) 位,金额单位为元,不能为万元,最小单位为分
                  2.不支持负数
      修改区

      时间:
      修改人:
      原因:

      修改区结束
      ********************************************************************/
      function Arabia_to_Chinese(Num){
       for(i=Num.length-1;i>=0;i--)
       {
        Num = Num.replace(",","")//替换tomoney()中的“,”
        Num = Num.replace(" ","")//替换tomoney()中的空格
       }
       Num = Num.replace("¥","")//替换掉可能出现的¥字符
       if(isNaN(Num)) { //验证输入的字符是否为数字
        alert("请检查小写金额是否正确");
        return;
       }
       //---字符处理完毕,开始转换,转换采用前后两部分分别转换---//
       part = String(Num).split(".");
       newchar = "";
       //小数点前进行转化
       for(i=part[0].length-1;i>=0;i--){
       if(part[0].length > 10){ alert("位数过大,无法计算");return "";}//若数量超过拾亿单位,提示
        tmpnewchar = ""
        perchar = part[0].charAt(i);
        switch(perchar){
        case "0": tmpnewchar="零" + tmpnewchar ;break;
        case "1": tmpnewchar="壹" + tmpnewchar ;break;
        case "2": tmpnewchar="贰" + tmpnewchar ;break;


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多