import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class RMBUpper {
private final String []dws=new String[]{"","拾","佰","仟","万","拾万","佰万","仟万","亿","拾亿","佰亿","仟亿"};
private final String []szs=new String[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","镹"};
private String qs;
private String result="";
/**
* 功能:转化十亿以内的人民币数字为大写格式
* @param args
*/
public static void main(String[] args) {
BufferedReader in
= new BufferedReader(new InputStreamReader(System.in));
String r="0";
do{
System.out.println("请输入要转换为大写的十亿以内的正整数:");
try {
r=in.readLine();
r=Integer.parseInt(r)+"";
} catch (IOException e) {
e.printStackTrace();
}
}
while(!(Integer.parseInt(r)>0&&Integer.parseInt(r)<1000000000));
RMBUpper rmb=new RMBUpper(r+"");
System.out.println(rmb.getUpper());
}
public String getUpper() {
// TODO 获得输入的大写形式
this.com();
return this.result;
}
private void com() {
// TODO 开始计算
this.turnNumNotZero();
this.deleteTooMuchZero();
this.turnZero();
}
private void turnZero() {
// TODO 将0转换为零
if(this.result.lastIndexOf("0")==this.result.length()-1){//处理最后是零的情况
this.result=this.result.substring(0,this.result.length()-1);
}
this.result=this.result.replaceAll("0", this.szs[0]);
}
private void deleteTooMuchZero() {
// TODO 删除多余的零
if(this.result.indexOf("00")==-1)return;
this.result=this.result.replace("00", "0");
this.deleteTooMuchZero();
}
private void turnNumNotZero() {
// TODO 将非零数字转换为大写
for(int i=0;i<this.qs.length();i++){
int index=Integer.parseInt(this.qs.charAt(i)+"");
if(index!=0){
this.result+=this.szs[index]+this.dws[this.qs.length()-i-1];
}else{
this.result+="0";
}
}
}
public RMBUpper(String qs) {
this.qs = qs;
}
}
分享到:
相关推荐
将数字转变为大写的人民币格式输出比如 1024356 输出为:一百零拾二万四千三百五拾六
人民币数字转大写.java
在excel中输入数字转换成人民币大写,在excel中输入数字转换成人民币大写,在excel中输入数字转换成人民币大写
Java语言人民币转化为大写,支持一亿以内的数字;
java中把数字转化为人民币大写形式工具
人民币数字转大写_金额转换小工具 财务人员经常用到。
此程序主要实现把输入的人民币数字形式转化为大写的形式,例如:输入为1.56 ;输出为壹元伍角陆分
人民币数字转换成汉字大写 android Java 运行效率
C#实现数字转化大写,模拟银行大写人民币值打印!
中科大-软件测试实验一-人民币数字大写转换黑盒测试实验报告 (2).pdf中科大-软件测试实验一-人民币数字大写转换黑盒测试实验报告 (2).pdf中科大-软件测试实验一-人民币数字大写转换黑盒测试实验报告 (2).pdf中科大-...
JS将数字转换为大写汉字人民币
很好用的转化小工具,可以转化万亿以内的数字。 本软件未做完整的字符过滤,请勿尝试无关字符。
C#中将数字金额转化为大写金额。C#中将数字金额转化为大写金额。
关于人民币数字转大写的黑盒测试实验报告,含源码,语言C#
人民币由阿拉伯数字转为大写中文
java程序代码,阿拉伯数字转化为大写
应用javascript转换数字为大写人民币
本文实例为大家分享了python实现人民币大写转换的具体代码,供大家参考,具体内容如下 #!/usr/bin/python # -*- coding:utf-8 -*- # ********* 转换方法介绍 ********* # 将需要转换的数字从右向左,每4位分成一个...
人民币数字转大写,如何将1.0转换成壹圆输出
目前支持正负千亿以内(整数部分不超过12位)的整数和小数的转化。 2、当转换为汉字金额时精确到分,即小数部分的第二位,如果您传入的金额小数部分超过两位则自动在第三位开始四舍五入。如:1234567.074会转换为...