将阿拉伯数字钱格式转换成中文格式

来源:互联网 发布:韩顺平php全套视频400 编辑:程序博客网 时间:2024/06/05 00:35
/** * @description:将阿拉伯数字钱格式转换成中文格式 * @author:zhanyan_x * @version:1.0 * @date:2013-12-27 下午3:28:48 */public class DemoConvertMoney {public static String[] digitals=new String[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};public static void main(String[] args) {System.out.println(convertMoneyFormat(1023406.09));}public static String convertMoneyFormat(Double money){int num1=(int) (money/10000);//取万位上的int num2=(int) (money%10000);//取个位到千位的int num3=(int)(money*10%10);//取小数点后第一位(角)int num4=(int)(money*100%10);//取小数点后第二位的(分)String wanwei=num1==0?"":convert(num1)+"万";return wanwei+convert(num2)+"元"+jiaoFen(num3, num4);}/** * 转换个位到千位 * @param num * @return */public static String convert(int num){StringBuffer sb=new StringBuffer();int qian=num/1000;if (qian!=0) {sb.append(digitals[qian]+"千");}int bai=num/100%10;if (bai!=0) {sb.append(digitals[bai]+"百");}int shi=num%100/10;int ge=num%10;if (ge==0) {if (shi!=0) {sb.append(digitals[shi]+"十");}}else {if (shi==0) {sb.append(digitals[shi]+digitals[ge]);}else {sb.append(digitals[shi]+"十"+digitals[ge]);}}return sb.toString();}/** * 转换角分 * @param num1角 * @param num2分 * @return */public static String jiaoFen(int num1,int num2){String str=null;if (num1!=0||num2!=0) {if (num2==0) {if (num1!=0) {str=digitals[num1]+"角";}}else {str=digitals[num1]+"角"+digitals[num2]+"分";}}return str;}}

0 0
原创粉丝点击