JAVA 数字转换为中文大写的转换
2013-03-05 11:26
148 查看
package zeng.test; public class CnUpperCaser { private String integerPart; private String floatPart; private static final char[] cnNumbers = { '零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖' }; private static final char[] series = { '元', '拾', '百', '仟', '万', '拾', '百', '仟', '亿' }; /** * 构造函数,通过它将阿拉伯数字形式的字符串传入 * * @param original */ public CnUpperCaser(String original) { // 成员变量初始化 integerPart = ""; floatPart = ""; if (original.contains(".")) { // 如果包含小数点 int dotIndex = original.indexOf("."); integerPart = original.substring(0, dotIndex); floatPart = original.substring(dotIndex + 1); } else { // 不包含小数点 integerPart = original; } } /** * 取得大写形式的字符串 * * @return */ public String getCnString() { // 因为是累加所以用StringBuffer StringBuffer sb = new StringBuffer(); // 整数部分处理 for (int i = 0; i < integerPart.length(); i++) { int number = getNumber(integerPart.charAt(i)); sb.append(cnNumbers[number]); sb.append(series[integerPart.length() - 1 - i]); } // 小数部分处理 if (floatPart.length() > 0) { sb.append("点"); for (int i = 0; i < floatPart.length(); i++) { int number = getNumber(floatPart.charAt(i)); sb.append(cnNumbers[number]); } } // 返回拼接好的字符串 return sb.toString(); } /** * 将字符形式的数字转化为整形数字 因为所有实例都要用到所以用静态修饰 * * @param c * @return */ private static int getNumber(char c) { String str = String.valueOf(c); return Integer.parseInt(str); } /** * @param args */ public static void main(String[] args) { System.out.println(new CnUpperCaser("123456789.12345").getCnString()); System.out.println(new CnUpperCaser("123456789").getCnString()); System.out.println(new CnUpperCaser("100000000.12345").getCnString()); System.out.println(new CnUpperCaser("0.1234").getCnString()); } }
相关文章推荐
- JAVA 数字转换为中文大写的转换
- java 中文大写数字 转换成 阿拉伯数字
- 刚开始学Java,写了一个金额大写转换和中文大写数字转换的类
- .Net/C#/VB/T-SQL/Java 实现: 将天文数字转换成中文大写 (2000 年前的思路,打劫的,一点儿技术含量都没有)
- .Net/C#/VB/T-SQL/Java 实现: 将天文数字转换成中文大写 (2000 年前的思路,打劫的,一点儿技术含量都没有)
- java实现数字金额转换中文大写金额
- java将中文转换成英文并支持首字母大写
- Java中实现数字金额到中文大写字符的转换!! 选择自 netfalcon 的 Blog
- java实现金额数字转换为中文大写
- Java中实现数字金额到中文大写字符的转换!!
- .Net/C#/VB/T-SQL/Java/Script 实现: 将天文数字转换成中文大写 (2000 年前的思路,打劫的,一点儿技术含量都没有)
- 将天文数字转换成中文大写(.Net/C#/VB/T-SQL/Java 实现)
- java 实现将String字符串大写中文数字转换成int类型整数
- 转 .Net/C#/VB/T-SQL/Java/Script 实现: 将天文数字转换成中文大写 (2000 年前的思路,打劫的,一点儿技术含量都没有)
- java阿拉伯数字表示的金额转换成中文大写金额
- JAVA编写 将阿拉伯数字转换成中文大写(不要Script的)
- 数字金额转换中文大写Java实现
- java 实验七 之 阿拉伯整数转换为中文大写数字(注意读法)
- 使用 JAVA 将数字金额转换成大写中文金额
- 关于转换大写中文金额-新学的java函数整理