`
moneyprosper
  • 浏览: 817 次
  • 性别: Icon_minigender_1
  • 来自: 成都
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

将数字转换成中文数字

    博客分类:
  • java
J# 
阅读更多
将阿拉伯数字转换成中文数字,大家可以看我的测试数据,应该没有BUG。

/**
 * 将数字转换成中文数字
 * @author Prosper
 *
 */
public class IntToCN
{

	public static void main(String[] args)
	{
		
		int ri = ((Double)(Math.random()*10)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*100)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*1000)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*10000)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*100000)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*1000000)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*10000000)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*100000000)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*1000000000)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
		
		ri = ((Double)(Math.random()*10000000000l)).intValue();
		System.out.println(ri+" : "+intToZH(ri));
	}
	
	/**
	 * 将数字转换成中文数字
	 * @author Prosper
	 *
	 */
	public static String intToZH(int i)
	{

        String[] zh = {"零", "一", "二", "三", "四", "五", "六", "七", "八", "九"};  
        String[] unit = {"", "十", "百", "千", "万", "十", "百", "千", "亿", "十"};  
        
		String str = "";
		StringBuffer sb = new StringBuffer(String.valueOf(i));
		sb = sb.reverse();
		int r = 0;
		int l = 0;
		for (int j = 0; j < sb.length(); j++)
		{
			/**
			 * 当前数字
			 */
			r = Integer.valueOf(sb.substring(j, j+1));
			
			if (j != 0)
				/**
				 * 上一个数字
				 */
				l = Integer.valueOf(sb.substring(j-1, j));
			
			if (j == 0)
			{
				if (r != 0 || sb.length() == 1)
					str = zh[r];
				continue;
			}
			
			if (j == 1 || j == 2 || j == 3 || j == 5 || j == 6 || j == 7 || j == 9)
			{
				if (r != 0)
					str = zh[r] + unit[j] + str;
				else if (l != 0)
					str = zh[r] + str;
				continue;
			}
			
			if (j == 4 || j == 8)
			{
				str =  unit[j] + str;
				if ((l != 0 && r == 0) || r != 0)
					str = zh[r] + str;
				continue;
			}
		}
		return str;
	}
}
分享到:
评论

相关推荐

    JavaScript实现把数字转换成中文

    JavaScript 实现数字转换成中文是一种常见的编程需求,特别是在处理金融、会计等领域,中文数字的表示方式更加直观且符合中文阅读习惯。以下是一个简单的 JavaScript 函数,用于将阿拉伯数字转换为中文数字。 首先...

    数字转换成中文程序 数字转换成中文程序

    数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序数字转换成中文程序...

    C# 数字转换成中文

    在编程领域,尤其是在财务软件或报表系统中,将数字转换为中文大写是常见的需求,因为中文大写常用于财务报告、发票等正式文档中,以避免数字篡改。C#作为.NET框架中的主要编程语言,提供了丰富的字符串处理功能,...

    java实现阿拉伯数字 转换为 汉字数字 算法

    java实现阿拉伯数字 转换为 汉字数字 算法

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

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

    Java 数字转换成中文读法

    在编程领域,尤其是在Java开发中,有时我们需要将数字转换成中文读法,以便于用户更加直观地理解数据。这个需求通常出现在财务、报表或者人机交互界面等场景。标题所提及的问题是:“Java设计输入‘12345’显示‘一...

    oracle数字转换中文

    在财务模块的开发中,将数字转换成中文大写是必需的功能之一,尤其是在中国以及使用中文的地区。例如,在开具发票、合同等正式文档时,通常需要将金额数字转换为中文大写形式,以增加文档的正式性和防止篡改。 ####...

    阿拉伯数字转换为中文小写数字

    在Android开发过程中,有时我们需要将阿拉伯数字(1, 2, 3...)转换成中文小写数字(一,二,三...),特别是在涉及到文化习惯或者用户界面本地化的时候,如书籍页码显示。这个任务涉及到字符串处理和字符映射,下面...

    中文数字转化成阿拉伯数字

    在编程领域,中文数字转化成阿拉伯数字是一项常见的需求,特别是在处理中文文本数据时。C#是一种广泛使用的面向对象的编程语言,它提供了丰富的库和工具来处理字符串和文本转换。本篇文章将深入探讨如何在C#中实现...

    java将数字转换成大写字母

    Java 中实现数字金额到中文大写字符的转换是指将阿拉伯数字转换成中文大写的过程。本文将详细介绍 Java 实现数字金额到中文大写字符的转换的知识点。 知识点一: 数字金额到中文大写字符的转换的需求 在实际应用中...

    将阿拉伯数字转换为汉字数字或者汉字大写金额

    1、该dll能将阿拉伯数字转换为汉字数字或者中文大写金额。例如1234567.07可转换为: “一百二十三万四千五百六十七点零七”或“壹佰贰拾叁万肆仟伍佰陆拾柒圆零柒分”。 目前支持正负千亿以内(整数部分不超过12位)...

    易语言数字转换汉字大写

    在编程领域,尤其是在中文编程环境中,有时我们需要将阿拉伯数字转换为汉字大写,这在财务、会计等领域的报表和凭证中尤为常见。易语言作为一款中国本土开发的、以中文编程为特色的编程语言,提供了方便的方式来实现...

    用C++编写数字转换成汉字大写的程序

    标题 "用C++编写数字转换成汉字大写的程序" 提示我们要探讨的是如何利用C++编程语言将阿拉伯数字转换为汉字大写,这种转换在银行、财务等对账单有明确要求的领域尤为常见。汉字大写数字通常用于增强财务记录的清晰度...

    mysql 函数,可以将数字转换为中文大写形式

    mysql 函数,可以将数字转换为中文大写形式。大写数字是中国特有的数字书写方式,利用与数字同音的汉字取代数字,以防止数目被涂改。 据考证,大写数字最早是由武则天发明,后经朱元璋改进完善。

    将阿拉伯数字转换为汉字数字

    总之,阿拉伯数字到汉字数字的转换是中文编程中常见的需求,`arabChange.dll`提供了这样的功能,使得C#开发者可以方便地将阿拉伯数字转化为符合中文阅读习惯的汉字数字。通过理解和正确使用这个库,可以提高代码的...

    delphi阿拉伯数字转换成中文写法

    把阿拉伯数字转为汉字写法比如123456789转化为零壹贰叁肆伍陆柒捌玖,以及几百几千几万的数字都可以转化

    中文数字转成阿拉伯数字 java 实现

    在Java编程语言中,将中文数字转换为阿拉伯数字是一个常见的需求,特别是在处理中文文本数据时。这个场景下,我们有一个名为“中文数字转成阿拉伯数字 java 实现”的压缩包,包含了一个实现此功能的Java包和一个单元...

    c++_将数字转换为汉字

    cout输入一个阿拉伯数字:"; cin&gt;&gt;nNumber; char str[]={"零"}; switch(nNumber) { case 0: { strcpy(str,"零"); break; } case 1: { strcpy(str,"一"); break; } case 2: { ...

    数字日期转换成中文日期

    将数字日期转换成中文日期的工具类。eg:2014-07-15会转换成二零一四年七月十五日。

    js将数字转换成中文

    本文将详细介绍一个JavaScript函数,该函数能够实现将数字转换成中文大写的功能。 #### 函数概述 给定的代码段定义了一个名为`transform`的函数,其功能是将传入的数字字符串转换为对应的中文大写表示。例如,传入`...

Global site tag (gtag.js) - Google Analytics