package com.zuidaima.test;

import java.util.HashMap;

public class dataChangZh1 {

/**

* 人民币大写单位制

*/

private static HashMap dws;

/**

* 数字对应的中文

*/

private static String[] jes;

// 初始化执行

static{

dws = new HashMap();

dws.put(-2, "分");

dws.put(-1, "角");

dws.put(0, "元");

dws.put(1, "拾");

dws.put(2, "佰");

dws.put(3, "仟");

dws.put(4, "万");//

dws.put(5, "拾");

dws.put(6, "佰");

dws.put(7, "仟");

dws.put(8, "亿");//

dws.put(9, "拾");

dws.put(10, "佰");

dws.put(11, "仟");

dws.put(12, "万");

jes = new String[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};

}

/**

* 数字转换人民币大写

* @param number 数字 不支持科学数字

* @return

*/

public static String chinese(String number){

StringBuffer su = new StringBuffer();

// 整数部分

number = delInvalidZero(number);

String str = null;

// 小数部分

String decimal = null;

if(number.contains(".")){

// 截取整数位

str = number.split("\\.")[0];

decimal = number.split("\\.")[1];

}else{

str = number;

}

// 判断是否存在整数位

if(str.length()>0){

for (int i = 0; i < str.length() ; i++) {

String context = str.substring(i, i+1);

int pow = str.length()-i-1;

Integer val = Integer.parseInt(context.toString());

// 获取中文单位

String sign = dws.get(pow);

// 获取中文数字

String name = jes[Integer.parseInt(context)];

if(val==0){

if(pow%4!=0){// 删除单位

sign = "";

}

if(i < str.length()-1){

Integer val1 = Integer.parseInt(str.substring(i+1, i+2));

if(val==0&&val==val1){

name = "";

}

}else if(i == str.length()-1){

name = "";

}

}

su.append(name+sign);

}

}

// 判断是否存在小数位

if(decimal!=null){

str = decimal.substring(0,1);

if(!"0".equals(str)){

su.append(jes[Integer.parseInt(str)]+dws.get(-1));

}

if(decimal.length()==2){

str = decimal.substring(1,2);

if(!"0".equals(str)){

su.append(jes[Integer.parseInt(str)]+dws.get(-2));

}

}

}else{

su.append("整");

}

return su.toString();

}

/**

* 清理数字特殊字符

* @param str

* @return

*/

private static String delInvalidZero(String str){

if("0".equals(str.substring(0, 1))){

return delInvalidZero(str.substring(1, str.length()));

}else if(str.contains(",")){

return delInvalidZero(str.replaceAll(",", ""));

}else{

return str;

}

}

public static void main(String[] args) {

System.out.println(chinese("1234.56"));

}

}

java美元转换人民币代码,java实现人民币数字转换中文大写的工具实例代码demo分享...相关推荐

  1. java实现人民币数字转换中文大写的工具实例代码demo分享

    原文:java实现人民币数字转换中文大写的工具实例代码demo分享 http://www.zuidaima.com/share/1816208858221568.htm 刚好在项目里面用到了数字转化为 ...

  2. JAVA 纯数字/金额数字转中文大写

    有时候一些金额数字需要转成中文大写展示到发票的金额框这类地方,包括一些纯粹的数量非金额的数字的大写转换,网上看很多都是金额的,纯数字的话有些不同,这里写了一个数字转中文大写的工具类: 1:金额数字转中 ...

  3. Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)

    本文会从传统的BIO到NIO再到AIO自浅至深介绍,并附上完整的代码讲解. 下面代码中会使用这样一个例子:客户端发送一段算式的字符串到服务器,服务器计算后返回结果到客户端. 代码的所有说明,都直接作为 ...

  4. java递归实现多级菜单栏_Java构建树形菜单以及支持多级菜单的实例代码

    这篇文章主要介绍了Java构建树形菜单的实例代码(支持多级菜单),非常不错,具有参考借鉴价值,需要的朋友可以参考下 效果图:支持多级菜单. 菜单实体类: public class Menu { // ...

  5. (转载)Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)

    转载请注明出处:http://blog.csdn.net/anxpp/article/details/51512200,谢谢! 本文会从传统的BIO到NIO再到AIO自浅至深介绍,并附上完整的代码讲解 ...

  6. java单数字随机抽奖特效_jquery输入数字随机抽奖特效的简单实现代码

    简介:jQuery自定义数值抽奖活动代码是一款点击开始按钮计算机会产生玩家输入范围内的随机数,点击停止按钮,将显示数字最终结果的效果. 效果图如下: 代码如下: jQuery自定义数值抽奖活动代码 - ...

  7. 人民币转换:数字转中文大写

    考试题目和要点: 中文大写金额数字前应标明"人民币"字样.中文大写金额数字应用壹.贰.叁.肆.伍.陆.柒.捌.玖.拾.佰.仟.万.亿.元.角.分.零.整等字样填写.(30分) 中文 ...

  8. java 微信自定义菜单开发_微信公众号开发之设置自定义菜单实例代码【java版】...

    本实例是为了实现在管理后台实现微信菜单的添加删除管理. 1.首先我们需要新建一个数据库表用于存放menu菜单项 可包含的字段有id.父类id.name.排序.是否显示.类型(view.click).链 ...

  9. java jdom 设置第1行_Java通过jdom操作生成XML文件的实例代码下载

    工作需要,要生成xml文件,所以做了个小demo分享一下. 看代码吧~ main()里面没什么好说的 该写的都写了public static void main(String[] args) { // ...

  10. java 微信 摇一摇红包_微信小程序“摇一摇”的实例代码

    微信小程序并没有提供摇一摇API接口,但是提供了一个重力感应的API 「wx.onAccelerometerChange(CALLBACK)」,我们可以用这个方法来模拟微信摇一摇功能,代码如下: Pa ...

最新文章

  1. LeetCode刷题-3
  2. 迭代器、生成器、面向过程编程思想
  3. 如何高效的使用vim
  4. 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。...
  5. oracle数据转成sqlserver,oracle数据库转换到Sqlserver的几点经验
  6. 常规单元测试和存根–测​​试技术4
  7. 记一次Linux磁盘满盘/dev/vda1目录清理记录
  8. 2015年 不可不知的五大热点话题
  9. 苹果商店打不开怎么办_苹果手机迅雷版,iOS迅雷Beta内测版企业版安装下载
  10. msp432快速入门第三节之让LED闪起来
  11. 动漫系列美化XP主题风暴下载
  12. Laravel 5.5 Eloquent ORM - 关联关系
  13. 5.18 对表格按行进行排序 [原创Excel教程]
  14. day04-Testin云测平台操作
  15. ant design vue 组件 Tree
  16. nacos get changed dataId error, code: 403
  17. 中国科学院计算机专业职称,中国科学院关于高级工程师职务分级的意见
  18. 集算器协助SQL实现非等值分组
  19. Android播放本地音频文件
  20. 1024 程序员节官方剧透:重磅大咖再聚,共话中国技术新生态

热门文章

  1. java微信qq登录接口开发_微博、微信、QQ第三方登陆实现 javaweb_thridlogin
  2. jupyter notebook插件安装
  3. Gravity:环形二维码扫描识别传感器详细介绍和工作原理
  4. 上课笔记-指针(从百草园到三味书屋)
  5. 腾讯云服务器放音乐,使用腾讯云函数实现网易云音乐自动打卡签到
  6. Cartographer论文精读-Real-Time Loop Closure in 2D LIDAR SLAM
  7. java 实现超级玛丽小游戏
  8. yaml文件的加载使用
  9. IIS站点出现503错误。
  10. 计算机网络与应用技术清华答案第二版,计算机网络-原理、技术与应用(第2版)部分习题答案(不外传!).pdf...