java 数字转大写汉字
来源:互联网 发布:网络拓扑类型 编辑:程序博客网 时间:2024/05/02 06:11
package com.javens.test;
import java.util.HashMap;
import java.util.Map;
public class Test1 {
private static int num =0;
public static void main(String[] args) {
new Test1().formatTo(100010100);
}
public void formatTo(int money){
Map<Integer, String> moneyMap = new HashMap<Integer, String>();
Map<Integer, String> moneyMap2 = new HashMap<Integer, String>();
StringBuffer sb = new StringBuffer();
moneyMap.put(1, "壹");
moneyMap.put(2, "贰");
moneyMap.put(3, "叁");
moneyMap.put(4, "肆");
moneyMap.put(5, "伍");
moneyMap.put(6, "陆");
moneyMap.put(7, "柒");
moneyMap.put(8, "捌");
moneyMap.put(9, "玖");
moneyMap.put(0, "零");
//moneyMap2.put(1, null);
moneyMap2.put(2, "拾");
moneyMap2.put(3, "佰");
moneyMap2.put(4, "仟");
moneyMap2.put(5, "万");
moneyMap2.put(6, "十");
moneyMap2.put(7, "百");
moneyMap2.put(8, "千");
moneyMap2.put(9, "亿");
moneyMap2.put(10, "十");
moneyMap2.put(11, "百");
moneyMap2.put(12, "千");
moneyMap2.put(13, "万");
String moneyString = (money+"").trim().toString();
int moneyLength = moneyString.length();
num = moneyLength;
boolean flag=false;
StringBuffer sb1=new StringBuffer(moneyString);
String moneyString1=sb1.reverse().toString();
if(moneyLength>=9){
for(int j=4;j<8;j++){
Character c2 = moneyString1.charAt(j);
Integer key2 = c2.getNumericValue(c2);
if(key2!=0){
flag=true;
break;
}
}
}
for(int i=0;i<moneyLength;i++){
Character c = moneyString.charAt(i);
Integer key = c.getNumericValue(c);
if(i<moneyLength-1){
if(key==0){
if((num==5 && moneyLength<9 && moneyLength>=5) || (num==9 && moneyLength>=9)||(num==5 && moneyLength>=9 && flag==true)){
sb.append(moneyMap2.get(num));
}
if(i+1<moneyLength){
Character c1 =moneyString.charAt(i+1);
if(c1.getNumericValue(c1)!=0){
sb.append(moneyMap.get(key));
}
}
}else{
sb.append(moneyMap.get(key)).append(moneyMap2.get(num));
}
num--;
}
if(i==moneyLength-1&&num==1){
if(key==0){
sb.append("元整");
}else{
sb.append(moneyMap.get(key)).append("元整");
}
}
}
System.out.println(sb);
}
}
运行结果:
壹亿零壹万零壹佰元整
- java 数字转大写汉字
- java数字转汉字大写(全)
- 数字转大写汉字
- 数字转汉字大写金额
- JS数字转汉字大写
- js 数字转大写汉字
- php 金额小写数字转大写汉字
- 数字转换汉字大写
- java实现数字金额转换成汉字大写金额
- 数字转换为大写汉字
- 数字转换成大写汉字
- 数字转换成汉字大写
- 数字转换成汉字大写
- 数字转换成汉字大写
- 数字转换为大写汉字
- java 金额数字转大写
- java实现数字转大写
- java 数字转汉字
- Java语言中的IO系统
- 工厂方法模式(Factory Method)
- [转载]Writing Fast, Memory-Efficient JavaScript
- codility上的问题 (20) Tau 2012
- 简单的用java生成文件和做http下载
- java 数字转大写汉字
- poj 2774/poj 1743/poj 3261后缀数组应用
- 黑马程序员_DOM获取节点
- Linux目录结构
- 模板的实例化概念
- 规划(2013.8.25)
- linux coredump
- MySQL最大连接数设置
- 那年,一步一步学linux c ---getch()详解