import java.text.DecimalFormat;
//import java.util.Calendar;
public class NumToText {
/**
* 人民币大小写转换
* @param dblNum --800.34
* @return -- 捌佰零拾零圆叁角肆分整--到分
*/
public static String getUpperCase(double dblNum) {
String str_dblNum;
String NumToText = "零";
String[] NumAtBit = { "元", "拾", "佰", "仟", "万", "拾", "佰", "仟", "亿", "拾", "佰", "仟" };
String[] NumAtBit1 = { "角", "分" };
String[] Num_To_Chinese = { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };
int intBit; //整数位数
int intDec = 2; //小数位数
String strTemp = "";
String strBit;
//str_dblNum=(new BigDecimal(dblNum)).toString();
//str_dblNum = (new Double(dblNum)).toString();
DecimalFormat df = new DecimalFormat("#.00");
str_dblNum = df.format(dblNum);
if (str_dblNum.indexOf(".") < 0)
str_dblNum += ".00";
else
str_dblNum += "00";
if(str_dblNum.equals(".0000")){
str_dblNum="0.0000";
}
intDec = str_dblNum.indexOf(".");
if (checkNumber(str_dblNum.substring(0, intDec)) && checkNumber(str_dblNum.substring(intDec, intDec + 2))) {
return "";
}
str_dblNum = str_dblNum.substring(0, intDec) + str_dblNum.substring(intDec, intDec + 3);
int int_dblNum = Integer.parseInt(str_dblNum.substring(0, intDec));
intBit = (String.valueOf(int_dblNum)).length();
for (int i = 1; i <= intBit; i++) {
strBit = str_dblNum.substring(i - 1, i);
if (strBit.equals("."))
strBit = "0";
strTemp += Num_To_Chinese[Integer.parseInt(strBit)] + NumAtBit[intBit - i];
}
int i_dot = str_dblNum.indexOf(".") + 1;
for (int i = 0; i < 2; i++) {
strTemp += Num_To_Chinese[Integer.parseInt(str_dblNum.substring(i_dot + i, i_dot + i + 1))] + NumAtBit1[i];
}
NumToText = strTemp + "整";
return NumToText;
}
}
人民币大小写转换
最新推荐文章于 2021-02-13 04:31:36 发布