zgqtxwd 的专栏
登录注册全站当前博客空间博客好友相册留言 Java 中实现数字金额到中文大写字符的转
换!!收藏
最近用到了数值转成大写人民币的功能,在网上找了一下只有 C++版的,好容易找到一
个 Java 版的竟然收费!!没办法就自己弄一个出来,想必用到该功能的人肯定少,就拿出
来与大家共享!!
/**
* <p>Title: money</p>
* <p>Description:
* *该类是把阿拉伯数字转换成中文大写的类。根据王大庆兄的 C++程序稍做修改而成,
后面附有王大庆兄的 C++
* * 程 序 , 如 果 对 所 附 的 C++ 程 序 有 什 么 问 题 请 与 王 大 庆 兄 联 系 email:
wang_daqing@21cn.com
* *如果对 Java 部分有什么看法和建议请与小弟联系,杨璇 email:netfalcon@263.net
* *类名:money
* *函数:String PositiveIntegerToHanStr(String NumStr) 负责把小数点前面的数转换为大
写中文
* *函数:String NumToRMBStr(double val) 负责把输入的 double 型的数转换为大写中文
* *注意 Java 程序转换的范围是:小数点前面 15 位(已测试通过),C++程序是 24 位
(我没有测试)
* </p>
* <p>Copyright: Copyright (c) 2003 你可以对本程序随意修改,复制,使用,但请保留这里
注释声明!!!</p>
* <p>Company: </p>
* @author 王大庆、杨璇
* @version 1.0
*/
import Java.lang.Math;
public class money{
//调试时用 main 函数
public static void main(String args[]){
money mon = new money();
System.out.println(-99999999999999.999+mon.NumToRMBStr(-99999999999999.999));
System.out.println(99999999999999.999+mon.NumToRMBStr(99999999999999.999));
System.out.println(mon.NumToRMBStr(100000000.00));
System.out.println(mon.NumToRMBStr(100000001.00));
}
String HanDigiStr[] = new String[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
String HanDiviStr[] = new String[]{"","拾","佰","仟","万","拾","佰","仟","亿",