public class NumberChineseFormatter extends Object
1. 数字转中文大写形式,比如一百二十一 2. 数字转金额用的大写形式,比如:壹佰贰拾壹 3. 转金额形式,比如:壹佰贰拾壹整
Constructor and Description |
---|
NumberChineseFormatter() |
Modifier and Type | Method and Description |
---|---|
static BigDecimal |
chineseMoneyToNumber(String chineseMoneyAmount)
中文大写数字金额转换为数字,返回结果以元为单位的BigDecimal类型数字
如:
“陆万柒仟伍佰伍拾陆元叁角贰分”返回“67556.32”
“叁角贰分”返回“0.32”
|
static int |
chineseToNumber(String chinese)
把中文转换为数字 如 二百二十 220
一百一十二 -》 112 一千零一十二 -》 1012 |
static String |
format(BigDecimal amount,
boolean isUseTraditional,
boolean isUseColloquial)
阿拉伯数字转换成中文.
|
static String |
format(double amount,
boolean isUseTraditional)
阿拉伯数字转换成中文,小数点后四舍五入保留两位.
|
static String |
format(double amount,
boolean isUseTraditional,
boolean isMoneyMode)
阿拉伯数字转换成中文,小数点后四舍五入保留两位.
|
static String |
format(double amount,
boolean isUseTraditional,
boolean isMoneyMode,
String negativeName,
String unitName)
阿拉伯数字转换成中文.
|
static String |
format(long amount,
boolean isUseTraditional)
阿拉伯数字(支持正负整数)转换成中文
|
static String |
formatSimple(long amount)
阿拉伯数字(支持正负整数)四舍五入后转换成中文节权位简洁计数单位,例如 -5_5555 =》 -5.56万
|
static String |
formatThousand(int amount,
boolean isUseTraditional)
格式化-999~999之间的数字
这个方法显示10~19以下的数字时使用"十一"而非"一十一"。 |
static String |
numberCharToChinese(char c,
boolean isUseTraditional)
数字字符转中文,非数字字符原样返回
|
public static String format(double amount, boolean isUseTraditional)
amount
- 数字isUseTraditional
- 是否使用繁体public static String format(double amount, boolean isUseTraditional, boolean isMoneyMode, String negativeName, String unitName)
主要是对发票票面金额转换的扩展
如:-12.32
发票票面转换为:(负数)壹拾贰圆叁角贰分
而非:负壹拾贰元叁角贰分
共两点不同:1、(负数) 而非 负;2、圆 而非 元 2022/3/9
amount
- 数字isUseTraditional
- 是否使用繁体isMoneyMode
- 是否金额模式negativeName
- 负号转换名称 如:负、(负数)unitName
- 单位名称 如:元、圆public static String format(double amount, boolean isUseTraditional, boolean isMoneyMode)
amount
- 数字isUseTraditional
- 是否使用繁体isMoneyMode
- 是否为金额模式public static String format(long amount, boolean isUseTraditional)
amount
- 数字isUseTraditional
- 是否使用繁体public static String formatSimple(long amount)
amount
- 数字public static String formatThousand(int amount, boolean isUseTraditional)
amount
- 数字isUseTraditional
- 是否使用繁体public static String format(BigDecimal amount, boolean isUseTraditional, boolean isUseColloquial)
amount
- 数字isUseTraditional
- 是否使用繁体isUseColloquial
- 是否使用口语化(e.g. 一十 -》 十)public static String numberCharToChinese(char c, boolean isUseTraditional)
c
- 数字字符isUseTraditional
- 是否繁体public static BigDecimal chineseMoneyToNumber(String chineseMoneyAmount)
chineseMoneyAmount
- 中文大写数字金额public static int chineseToNumber(String chinese)
chinese
- 中文字符Copyright © 2024. All rights reserved.