`

将中文大写转换为阿拉伯数字

    博客分类:
  • java
 
阅读更多
将”壹拾叁亿零壹“转换为”1300000001“的代码

代码如下:
package com.moneyTransfer.Test;

/**
 * 
 * @author yangjianzhou
 * 在0---9999亿的范围内的转换
 */
public class ChineseToDigital {
	
	private static final String data = "壹贰叁肆伍陆柒捌玖";
	
	private static final String units = "拾佰仟";
	
	public static void main(String[] args) {
		System.out.println(getDigital("壹拾叁亿零壹"));
	}
	
	public static double getDigital(String chineseMoney){
		
		char units[] = {'亿','万'};
		
		int indexY = chineseMoney.indexOf(units[0]);
		
		int indexW = chineseMoney.indexOf(units[1]);
		
		double result = 0.0;
		if(indexY>0){
			String substringY = chineseMoney.substring(0, indexY);
			result = result+Math.pow(10000, 2)*getNumber(substringY);
		}
		
		if(indexW>0){
			String substringW = chineseMoney.substring(indexY, indexW);
			result = result +Math.pow(10000, 1)*getNumber(substringW);
		}
		 if(indexY<0&&indexW<0){
			 String  substringG = chineseMoney;
			 result = result +getNumber(substringG);
		 }
		
		 if(indexW<0&&indexY>0&&indexY<chineseMoney.length()-1){
			 String  substringG = chineseMoney.substring(indexY+1, chineseMoney.length());
			 result = result +getNumber(substringG);
		 }
		
		 if(indexW>0&&indexW<chineseMoney.length()-1){
			 String  substringG = chineseMoney.substring(indexW, chineseMoney.length());
			 result = result +getNumber(substringG);
		 }
		  
		 return result;
		
	}
	
	public static double getNumber(String chineseStr){
		double result = 0;
		for(int i=0;i<chineseStr.length();i++){
			int indexData = data.indexOf(chineseStr.charAt(i));
			int indexUnit = units.indexOf(chineseStr.charAt(i));
			if(indexData>=0){
				result = result +(indexData+1);
			}else if(indexUnit>=0){
				result = result*Math.pow(10, indexUnit+1);
			}
		}
		return result;
	}

}



运行结果如下:
1.300000001E9
分享到:
评论

相关推荐

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

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

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

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

    python程序设计 将大写数字转换为阿拉伯数字

    将大写数字转换为阿拉伯数字

    python程序设计 将阿拉伯数字转换为大写数字

    将阿拉伯数字转换为大写数字,主要解决小数点问题,

    汉语大写数字转换成阿拉伯数字

    汉语大写数字转换成阿拉伯数字。支持如下转换 '一千二百二十一万九千三百五十七亿一千二百二十一万九千零五十七', '一千二百二十一', '一千零十', '一万零一百', '一千零十一', '一万零一百十一', '一千二百...

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

    阿拉伯数字转换为中文大写是将阿拉伯数字转换为中文大写数字的过程。在这个过程中,我们需要使用数组来存储中文大写数字和单位,然后通过遍历阿拉伯数字字符串,逐个将数字转换为中文大写数字,并加上相应的单位。 ...

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

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

    阿拉伯数字金额转换为大写数字金额

    这样,我们就可以通过调用JavaBean的`toChinese()`方法,将任何阿拉伯数字金额转换为大写汉字表示。 在实际应用中,这个功能可能需要处理更复杂的情况,比如负数、零、以及千位分隔符等。可以进一步扩展`...

    金额阿拉伯数字转换中文大写(全)

    在IT领域,尤其是在财务软件开发或数据处理中,经常需要将阿拉伯数字金额转换为中文大写,以便在财务报表、发票或合同中清晰准确地表示金额。这是因为中文大写数字在金融交易中能减少因书写错误导致的混淆,增强财务...

    将人民币转换为阿拉伯数字

    使用java编程实现将人民币大写转换为阿拉伯数字。本程序仅实现万元以下的人民币转换,输入数据必须以元结尾。

    中文数字转换阿拉伯数字

    在IT领域,中文数字转换阿拉伯数字是一个常见的编程需求,尤其在中国的文化背景下,有时需要将中文表述的数字转化为阿拉伯数字用于计算或数据处理。这个任务涉及到自然语言处理(NLP)和字符串处理技术,通常通过...

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

    环境:vs2005 C# 功能:阿拉伯数字转换为中文大写数字

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

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

    会计阿拉伯数字转换中文大写

    阿拉伯数字(1、2、3等)是我们日常使用的数字系统,但在正式的会计文档中,通常需要将这些数字转换为中文大写(壹、贰、叁等),以防止篡改和提高审计准确性。在编程领域,尤其是使用Visual Basic (VB) 这样的语言...

    阿拉伯数字转中文数字(vb)

    在编程领域,尤其是在Visual Basic(VB)环境中,有时我们需要处理数字格式化的需求,例如将阿拉伯数字转换为中文数字。这通常在财务、会计或者文化相关的软件应用中出现,因为中文数字在某些场合下更符合人们的阅读...

    sql server阿拉伯数字转大写中文存储过程

    SQL Server 是一个功能强大且广泛应用的关系数据库管理系统,而阿拉伯数字转大写中文是一个常见的需求,例如,在财务报表、发票printing等应用场景中,需要将阿拉伯数字转换为大写中文以满足特定的格式要求。本文将...

    excel中将阿拉伯数字转换成中文大写数字的函数方式.docx

    这个 VBA 代码定义了一个名为 NumberString 的函数,该函数将阿拉伯数字 x 转换成中文大写数字,format 参数指定了要使用的中文大写数字格式,type 参数指定了要返回的数字类型。然后,我们可以在 Excel 表格中使用...

    大写数值转换成阿拉伯数字

    大写数值转换成阿拉伯数字。例如: 一千五百万千零5百 15000500

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

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

    16位以内阿拉伯数字转中文大写VB源代码

    16位以内阿拉伯数字转中文大写VB源代码 自己写的代码,欢迎提意见,多多交流

Global site tag (gtag.js) - Google Analytics