您好,欢迎来到榕意旅游网。
搜索
您的当前位置:首页java 大写中文金额 转 数字

java 大写中文金额 转 数字

来源:榕意旅游网

最近做解析描述时提取到金额字段后,需要将文本中的大写金额转换成数字,然而发现很多博客里的程序又问题,在亿和万级中,如果出现百十千等小单位就会出错,先算成小单位然后遇到大单位如万在乘以1000导致金额出错。
于是更正代码如下:

/**
     * 大写金额转数字
     *
     */
    public static String ChineseConvertToNumber(String chineseAmount) {
   
        if (chineseAmount == null || chineseAmount.length() <= 0 || chineseAmount == "") {
   
            return null;
        }
        //移除计算干扰文字
        chineseAmount = chineseAmount
                .replace("元", "")
                .replace("整", "");

        // 字符切割
        char[] wordCharArray = chineseAmount.toCharArray();

        //最终要返回的数字金额
        BigDecimal numberAmount = BigDecimal.ZERO;

        //金额位标志量
        //表示有分位
        boolean fen = false;
        //表示有角位
        boolean jiao = false;
        // 表示个位不为0
        boolean yuan = false;
        //表示有十位
        boolean shi = false;
        //表示有百位
        boolean bai = false;
        //表示有千位
        boolean qian = false;
        //表示有万位
        boolean wan = false;
        //表示有亿位
        boolean yi = false;

        //从低位到高位计算
        for (int i = (wordCharArray.length - 1); i >= 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- nryq.cn 版权所有 赣ICP备2024042798号-6

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务