本文实例为大家分享了java阿拉伯数字转换成中文数字的具体代码,供大家参考,具体内容如下

package org.lulu.learn.work;

import java.io.*;

/**

* Project: Day07

* Created: Lulu

* Date: 2016/8/5

*/

public class Work02 {

public static void main(String[] args) {

// int num = 0;

// System.out.println(tranWan(num));

try(BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("res/data.txt")));

BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("res/result.txt")))

){

String str = "";

int percent = 0;

while ((str = br.readLine()) != null) {

bw.write(tranWan(Integer.parseInt(str)));

bw.newLine();

percent++;

Thread.sleep(100);

System.out.print("\r[");

for (int i = 0; i < 20; i++) {

if(i < percent/5){

System.out.print("=");

}else if(i == percent/5){

System.out.print(">");

}else{

System.out.print(" ");

}

}

System.out.print("]");

System.out.printf("\t%.2f%%", (float)percent);

}

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

} catch (InterruptedException e) {

e.printStackTrace();

}

}

/**

* 处理千万数字方法

*

* @param num

* @return

*/

private static String tranWan(int num) {

StringBuilder builder = new StringBuilder();

if (num / 10000 > 0) {//说明

builder.append(trans(num / 10000)).append("万");

}

int temp = num % 10000;

if (temp > 0) {

String trans = trans(temp);

//首先判断是否有万位,

if (builder.length() > 0) {

//如果千位为0, 则需要补零

if (temp / 1000 == 0) {

builder.append("零");

}

}

builder.append(trans);

}

if (builder.length() == 0) {

builder.append("零");

}

return builder.toString();

}

/**

* 完成4位数转换

*

* @param num

* @return

*/

private static String trans(int num) {

String[] numeric = new String[]{"零", "一", "二", "三", "四", "五", "六", "七", "八", "九"};

StringBuilder builder = new StringBuilder();

builder.append(numeric[num / 1000] + "千").

append(numeric[num / 100 % 10] + "百").

append(numeric[num / 10 % 10] + "十").

append(numeric[num % 10]);

//去掉了零千....

int index = -1;

while ((index = builder.indexOf(numeric[0], index + 1)) != -1) {

if (index < builder.length() - 1) {

builder.deleteCharAt(index + 1);

}

}

//去掉双零

index = 0;

while ((index = builder.indexOf("零零", index)) != -1) {

builder.deleteCharAt(index);

}

if (builder.length() > 1) {

//去掉开头的零

if (builder.indexOf(numeric[0]) == 0) {

builder.deleteCharAt(0);

}

//去掉末尾的零

if (builder.indexOf(numeric[0]) == builder.length() - 1) {

builder.deleteCharAt(builder.length() - 1);

}

}

//把开头一十换成十

if (builder.indexOf("一十") == 0) {

builder.deleteCharAt(0);

}

return builder.toString();

}

}

再为大家分享一段:java实现阿拉伯数字转换为汉字数字

private static String toChinese(String str) {

String[] s1 = { "零", "一", "二", "三", "四", "五", "六", "七", "八", "九" };

String[] s2 = { "十", "百", "千", "万", "十", "百", "千", "亿", "十", "百", "千" };

String result = "";

int n = string.length();

for (int i = 0; i < n; i++) {

int num = string.charAt(i) - '0';

if (i != n - 1 && num != 0) {

result += s1[num] + s2[n - 2 - i];

} else {

result += s1[num];

}

System.out.println(" "+result);

}

System.out.println(result);

return result;

}

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println("输入字符串:");

String str = scanner.next();

// 将字符串数字转化为汉字

toChinese(str);

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

java数字转中文_java阿拉伯数字转中文数字相关推荐

  1. python数字转中文_阿拉伯数字转换为中文数字的python实现

    #!/usr/bin/python # -*- coding: utf-8 -*- ''' 脚本功能:阿拉伯数字与中文数字转换 输入参数:阿拉伯数字,不带符号 初次编写日期:2018-07-24 说明 ...

  2. 请观看吉良吉影咏唱,并从头列出数字,包括但不限于阿拉伯数字。并按以下规则排列。1、字幕数字(只记中文字幕)>场景数字(比如时钟上的数字)2、阿拉伯数字>中文数字(有中文写中文)3、因切换场景重复

    请观看吉良吉影咏唱,并从头列出数字,包括但不限于阿拉伯数字.并按以下规则排列. 1.字幕数字(只记中文字幕)>场景数字(比如时钟上的数字) 2.阿拉伯数字>中文数字(有中文写中文) 3.因 ...

  3. java数字转中文_Java程序:输入数字转换成中文输出

    功能看似简单,但真正实现起来也不是易事 现在贴出代码,欢迎各位幕友提出建议!! package test01; import java.util.Scanner; public class Test ...

  4. java 过滤中文_Java 过滤字母、数字和中文 正则表达式

    [java]代码库/** * @Title:FilterStr.java * @Package:com.you.dao * @Description:Java中过滤数字.字母和中文 * @Author ...

  5. java 数字 字母 中文_java中英文字母、数字、中文所占字节数

    先了解下基本的单位: 1.比特(bit)即一个二进制位,例如100011就是6比特. 2.字节(byte),这是计算机中数据类型最基本的单位了,8bit组成1byte. java要确定每种基本类型所占 ...

  6. java 数字加减_java 用大写中文数字计算加减法

    满意答案 qq40777000 2013.08.31 采纳率:59%    等级:12 已帮助:7910人 public class MapTest { public static void main ...

  7. eclipse的java帮助文档_java在Eclipse中文apidoc帮助文档导入.doc

    今天一下午都在整java的api. 我的目标是在eclipse平台中用鼠标点击java的api就会自动显示出中文的注释.并且能在help中方便地搜索java的api. 这其实是使用bada开发平台后留 ...

  8. java做jsp问题_java/jsp中 中文问题详解

    java/jsp中 中文问题详解 更新时间:2006年10月13日 00:00:00   作者: 预备知识: 1.字节和unicode Java内核是unicode的,就连class文件也是,但是很多 ...

  9. java首字母排序_Java实现按中文首字母排序的具体实例

    这篇文章主要介绍了Java实现按中文首字母排序的具体实例,有需要的朋友可以参考一下 要实现"按中文首字母排序"操作,可以使用java.util包下的Arrays类的sort()函数 ...

  10. java实现字母排序_Java实现按中文首字母排序的具体实例

    要实现"按中文首字母排序"操作,可以使用java.util包下的arrays类的sort()函数. arrays类包含用来操作数组(比如排序和搜索)的各种方法. 比如对于排序操作的 ...

最新文章

  1. mysql快速迁移数据sql_使用Navicat Premium工具快速迁移数据方法 适用于mysql及mssql数据库...
  2. mysql8.0导出带数据的库表_MySQL8.0数据库导出与备份
  3. [LA3026]Period
  4. 六自由度高超声速飞行器的建模与控制器设计
  5. iptables中文man文档
  6. python多继承顺序_Python多继承以及MRO顺序的使用
  7. .net ajax批量删除,asp.net 全部选中与取消操作,选中后的删除(ajax)实现无刷新效果...
  8. AUTOSAR从入门到精通100讲(三十三)-AutoSar架构中的诊断事件管理
  9. hdfs 小文件服务器,服务器远程上传hdfs文件大小
  10. 95-35-010-Topic-Topic的新建 源码解析
  11. 请检查captcha表格_【分享】工程资料这样写,再也不用担心检查组来检查资料了...
  12. react和angualr动态插入带html标签或不带html标签的数据
  13. 护壁桩嵌入深度_钻孔灌注桩嵌岩深度最少多少
  14. 图解Python编程:从入门到精通系列教程(附全套速查表)
  15. 微信小程序 java家庭个人收支理财记账本springboot
  16. 卡巴斯基实验室解析勒索软件的发展与攻防
  17. viewpage切换动画
  18. 《可复制的领导力》思维导图读书笔记,提升职场竞争力
  19. converting to execution character set: Illegal byte sequence
  20. 网格交易 python代码_网格交易原理和代码

热门文章

  1. ACM-水题 Demacia of the Ancients
  2. 一个神奇的大学科目《软件工程》,知识点总结+测试题,包你不挂科
  3. Container is restarting, wait until the container is running
  4. html5怎么设置字体位置,css如何设置字体位置
  5. 爬取某类网站并生成csv文件(人民邮电出版社书籍信息)
  6. word中a3转a4排版打印
  7. 怎么用计算机求原函数,科学计算器使用教程_科学计算器怎么解方程
  8. 微信公众号自定义消息模板(处理数据)
  9. 入职美团定级P7,最新最全180道高级岗面试题及答案
  10. OSChina 周一乱弹 ——为什么非洲人短跑长跑都强