文档介绍:/**
* 将输入金额num转换为汉字大写格式
* ***@param num 输入金额(小于10000000)
* ***@return 金额的大写格式
*/
public String translate(double num){
String[] upChinese={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖",};
String[] upChinese2={"分","角","圆","拾","佰","仟","萬","拾","佰","仟","亿","拾","佰","仟","兆"};
StringBuffer result=new StringBuffer();
int count=0;
int zeroflag=0;
boolean mantissa=false;
if(num<0){ //输入值小于零
return "输入金额不能为负数!";
}
if(num==0){ //输入值等于零
return "零";
}
if((num).indexOf('E')!=-1){ //输入值过大转为科学计数法本方法无法转换
return "您输入的金额过大";
}
int tem=(int)(num*100);
if(tem%100==0){ //金额为整时
if(tem==0)return "穷鬼别来!"; //输入额为e:
(0, "整");
tem=tem/100;
count=2;
mantissa=true;
}
while(tem>0){
int t=(int)tem%10; //取得最后一位
if(t!=0){ //最后一位不为零时
if(zeroflag>=1){ //对该位前的单个或多个零位进行处理
if(((!mantissa)&&count==1)){ //不是整数金额且分为为零
}else if(count>2&&count-zeroflag<2){ //
(1,"零");
}else if(count>6&&count-zeroflag<6&&count<10){ //万位后为零且万位为零
if(count-zeroflag==2){ //输入值如400000
(0,"萬");
}else{
(0,"萬零"); //输入值如400101
}
}else if(count>10&&count-zeroflag<10){
if(count-zeroflag==2){
(0,"亿");
}else{
(0,"亿零");
}
}else if(((count-zero