!674 Convert工具类中,新增中文大写数字金额转换为数字工具方法,解决issues I5EYB3

Merge pull request !674 from hellozrh/v5-dev
This commit is contained in:
Looly
2022-07-05 13:30:45 +00:00
committed by Gitee
2 changed files with 119 additions and 0 deletions

View File

@@ -5,8 +5,10 @@ import cn.hutool.core.date.DateException;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.lang.TypeReference;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.math.Money;
import cn.hutool.core.util.ByteUtil;
import cn.hutool.core.util.HexUtil;
import cn.hutool.core.util.StrUtil;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;
@@ -404,4 +406,36 @@ public class ConvertTest {
final String s = Convert.toDBC(null);
Assert.assertNull(s);
}
@Test
public void testChineseMoneyAmount2Number(){
String[] strs = new String[]{
"陆万柒仟伍佰伍拾陆圆",
"陆万柒仟伍佰伍拾陆元",
"叁角",
"贰分",
"陆万柒仟伍佰伍拾陆元叁角",
"陆万柒仟伍佰伍拾陆元贰分",
"叁角贰分",
"陆万柒仟伍佰伍拾陆元叁角贰分",
};
for(String s: strs) {
System.out.println("s="+s+", n="+Convert.chineseMoneyAmount2Number(s));
}
/*
* s=陆万柒仟伍佰伍拾陆圆, n=67556
* s=陆万柒仟伍佰伍拾陆元, n=67556
* s=叁角, n=0.3
* s=贰分, n=0.02
* s=陆万柒仟伍佰伍拾陆元叁角, n=67556.3
* s=陆万柒仟伍佰伍拾陆元贰分, n=67556.02
* s=叁角贰分, n=0.32
* s=陆万柒仟伍佰伍拾陆元叁角贰分, n=67556.32
*/
}
}