`
yaoweinan
  • 浏览: 138324 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

转化十亿以内的人民币数字为大写格式

 
阅读更多

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;
 }

}

分享到:
评论

相关推荐

    转变数字为大写人民币格式

    在IT行业中,尤其是在编程领域,有时我们需要将数字转化为特定的文本格式,如将数字转换成大写的人民币格式。这在财务软件、报表系统或者任何涉及金融数据展示的应用中非常常见。"转变数字为大写人民币格式"这个话题...

    人民币数字转大写.java

    人民币数字转大写.java

    数字转化人民币大写

    在excel中输入数字转换成人民币大写,在excel中输入数字转换成人民币大写,在excel中输入数字转换成人民币大写

    java中把数字转化为人民币大写形式

    在Java编程语言中,将数字转化为人民币大写形式是一个常见的需求,特别是在财务或者会计系统中。这涉及到字符串处理和字符映射的知识。以下是一个详细的过程和相关知识点。 首先,我们需要了解人民币大写数字的规则...

    把人民币数字形式(含小数点)转化为大写形式

    本文将深入探讨如何实现一个程序,将人民币的数字形式(包含小数点)转化为大写形式,例如将"1.56"转化为"壹元伍角陆分"。 首先,我们需要了解人民币的数字与大写文字之间的对应规则。人民币的大写形式有壹、贰、叁...

    人民币数字转大写_金额转换小工具

    人民币数字转大写_金额转换小工具 财务人员经常用到。

    人民币数字变大写形式

    标题提到的“人民币数字变大写形式”是一个常见的功能,尤其在财务系统或者银行应用中,它涉及到将阿拉伯数字的金额转换为汉字大写的表示,以确保财务记录的清晰性和准确性。这种转换在财务报表、发票和合同中尤其...

    数字转成人民币大写代码

    2. `isRMB`:可选参数,布尔值,默认情况下为False,如果设置为True,则表示转换为人民币格式,包含元、角、分;如果为False,则不包括这些单位。 3. `numOption`:可选参数,布尔值,当其为True时,会在每个数字...

    黑盒测试(人民币数字转大写) 实验报告

    **知识点详解:人民币数字转大写黑盒测试...总之,“人民币数字转大写”的黑盒测试实验是一个典型的案例,它不仅涉及基础的软件测试理论,还融入了对具体业务逻辑的深入理解,为软件测试教学和实践提供了有价值的参考。

    人民币数字转换成汉字大写

    人民币数字转换成汉字大写 android Java 运行效率

    JS将数字转换为大写汉字人民币

    JS将数字转换为大写汉字人民币

    Java人民币金额数字转换成大写

    Java 人民币金额数字转换成大写 Java 人民币金额数字转换成大写是 Java 面试中最常见的问题之一。本文将详细介绍如何使用 Java 实现人民币金额数字转换成大写的解决方案。 Java 中的 NumberFormat 类 在 Java 中...

    Qt实现人民币大写

    用户输入一个十亿以内的正整数,程序可以通过`text()`函数获取到输入的字符串。 2. **数值验证**:虽然题目假设用户输入总是正确的,但在实际编程中,我们应当进行输入验证,确保输入的是有效的数字。可以使用`...

    java实现数字转换人民币中文大写工具

    Java 实现数字转换人民币中文大写工具是指使用 Java 语言将数字转换为人民币中文大写格式的工具。该工具具有很高的实用价值,特别是在人事业务系统开发中,经常需要将数字转换为大写,以便于报表打印和日常业务处理...

    C#实现数字转化大写

    在编程领域,尤其是在财务软件开发中,将数字转化为大写汉字是常见的需求,尤其是在处理人民币金额时。在C#中实现这一功能,可以利用字符串处理、条件判断以及对汉字字符的映射。以下是对这个主题的详细解释: 首先...

    人民币金额大写数字转换器

    很好用的转化小工具,可以转化万亿以内的数字。 本软件未做完整的字符过滤,请勿尝试无关字符。

    数字转大写实例 人民币转大写实例

    综上所述,"数字转大写实例 人民币转大写实例"涉及到的是编程中处理数字和货币格式化的问题,尤其是中文环境下对数字和货币单位的正确转换,这在财务系统和相关应用开发中是必不可少的知识点。通过理解和掌握这些...

    C#数字转人民币大写

    总的来说,将数字转换为人民币大写是C#开发中的一项常见任务,通过理解和运用字符串处理技巧以及对人民币大写规则的理解,我们可以轻松地实现这个功能。在实际编程中,确保代码的健壮性和可维护性也是至关重要的。

    人民币由阿拉伯数字转为大写中文

    人民币由阿拉伯数字转为大写中文

Global site tag (gtag.js) - Google Analytics