function Arabia_to_Chinese(Num){
for(i=Num.length-1;i>=0;i--)
{
Num = Num.replace(",","")//替换tomoney()中的“,”
Num = Num.replace(" ","")//替换tomoney()中的空格
}
Num = Num.replace("¥","")//替换掉可能出现的¥字符
if(isNaN(Num)) { //验证输入的字符是否为数字
alert("请检查小写金额是否正确");
return;
}
//---字符处理完毕,开始转换,转换采用前后两部分分别转换---//
part = String(Num).split(".");
newchar = "";
//小数点前进行转化
for(i=part[0].length-1;i>=0;i--){
if(part[0].length > 10){ alert("位数过大,无法计算");return "";}//若数量超过拾亿单位,提示
tmpnewchar = ""
perchar = part[0].charAt(i);
switch(perchar){
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="贰" + tmpnewchar ;break;
case "3": tmpnewchar="叁" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陆" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
switch(part[0].length-i-1){
case 0: tmpnewchar = tmpnewchar +"元" ;break;
case 1: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 2: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 3: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 4: tmpnewchar= tmpnewchar +"万" ;break;
case 5: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 6: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 7: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 8: tmpnewchar= tmpnewchar +"亿" ;break;
case 9: tmpnewchar= tmpnewchar +"拾" ;break;
}
newchar = tmpnewchar + newchar;
}
//小数点之后进行转化
if(Num.indexOf(".")!=-1){
if(part[1].length > 2) {
alert("小数点之后只能保留两位,系统将自动截段");
part[1] = part[1].substr(0,2)
}
for(i=0;i<part[1].length;i++){
tmpnewchar = ""
perchar = part[1].charAt(i)
switch(perchar){
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="贰" + tmpnewchar ;break;
case "3": tmpnewchar="叁" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陆" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
if(i==0)tmpnewchar =tmpnewchar + "角";
if(i==1)tmpnewchar = tmpnewchar + "分";
newchar = newchar + tmpnewchar;
}
}
//替换所有无用汉字
while(newchar.search("零零") != -1)
newchar = newchar.replace("零零", "零");
newchar = newchar.replace("零亿", "亿");
newchar = newchar.replace("亿万", "亿");
newchar = newchar.replace("零万", "万");
newchar = newchar.replace("零元", "元");
newchar = newchar.replace("零角", "");
newchar = newchar.replace("零分", "");
if (newchar.charAt(newchar.length-1) == "元" || newchar.charAt(newchar.length-1) == "角")
newchar = newchar+"整"
return newchar;
}
分享到:
相关推荐
前台页面,通过js转化成中文大写,阿拉伯数字转成中文大写
人民币数字转换成汉字大写 android Java 运行效率
在Android开发过程中,有时我们需要将阿拉伯数字(1, 2, 3...)转换成中文小写数字(一,二,三...),特别是在涉及到文化习惯或者用户界面本地化的时候,如书籍页码显示。这个任务涉及到字符串处理和字符映射,下面...
在IT行业中,尤其是在财务软件开发或者处理金融数据时,经常需要将阿拉伯数字(小写)转换为汉字大写,这是因为汉字大写数字在中国的金融交易中是标准的表示方式,可以有效防止因为数字混淆而引起的错误。...
在IT领域,尤其是在财务软件开发或数据处理中,经常需要将阿拉伯数字金额转换为中文大写,以便在财务报表、发票或合同中清晰准确地表示金额。这是因为中文大写数字在金融交易中能减少因书写错误导致的混淆,增强财务...
本文档介绍了一个PB(PowerBuilder)函数,该函数用于将阿拉伯数字(小写数字)转换为中文大写数字。此功能在财务、银行以及其他需要精确且正式表示金额的场景中非常有用。该函数支持从个位数到千万亿级别的数字转换...
非常好用的阿拉伯数字,转换成大写字母。很好,有需要的可以下载。
这通常涉及到将阿拉伯数字(小写)转化为汉字大写,以便于财务报告、发票和正式文档的清晰性和准确性。在中文环境中,大写数字可以避免因为手写或打印不清造成的误解,提高财务凭证的可读性。 小写数字转换为大写...
本篇文章将详细介绍如何在C# .NET环境下,将商品金额的小写阿拉伯数字转换为大写汉字。 首先,我们需要了解汉字数字的基本对应关系。在中文中,小写阿拉伯数字(0-9)与大写汉字数字的对应如下: 1. 0 对应 "零" 2...
2. 将每个数字字符转换为其对应的阿拉伯数字。例如,“壹”转换为1,“伍”转换为5。 3. 注意处理单位,理解其在数值中的位置。例如,“拾”代表十的倍数,“佰”代表百的倍数。 4. 按照数值顺序组合数字,根据单位...
本文将详细介绍如何实现从小写(即阿拉伯数字)到大写(即汉字表示)的人民币金额转换,并通过一个具体的代码示例进行说明。 #### 一、转换规则概述 小写转大写的转换规则主要涉及以下几点: 1. **数字与汉字的...
佛慈悲,应要求给整个下载在我的资源中,其中包含自学习桌面编程以来所找的资料及未完成的部分学习代码,从未完成的开始转入了另一个急需开发软件的研发工作,所以没时间来作这个的继续,打包原封不动提供学习了. ...
在编程领域,尤其是在财务软件开发中,经常需要将小写的阿拉伯数字金额转换为中文大写,以便于在发票、合同等正式文档中使用。PowerBuilder 是一种常用的开发工具,但其标准库并未提供直接将小写金额转换为大写金额...
在中文中,大写金额的表示法与小写阿拉伯数字完全不同,它使用了一套特殊的汉字来代表每个数字。例如,1对应"壹",2对应"贰",以此类推。转换过程需要遵循一定的规则,如个位、十位、百位、千位等位置上的数字对应...
《JavaScript无限位小写金额转换大写金额》说明:1.本程序用JavaScript语言编写。转换方法严格遵照中国人民银行规定的银行支票中关于中文大写填写规范的相关规定(见下面附文),两可之处按简便方法处理。2.输入小写...
首先,数字转中文主要是将阿拉伯数字(如1、2、3等)转换成中文数字(如一、二、三等)。在Java或Kotlin中,我们可以创建一个Map,将数字与对应的中文字符映射起来,然后通过遍历数字字符串并查找对应的中文字符来...
人民币的小写金额是使用阿拉伯数字表示的金额,例如1002300.90。大写金额则使用中文数字和单位来表示,例如“壹佰零拾零万贰仟三佰零拾零元玖角零分”。在实现转换时,我们需要将小写金额的每一位数字提取出来,并将...
小写金额通常是指阿拉伯数字表示的金额,如"123456789.01",而大写金额则是用汉字来表示,例如"壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元零壹分"。在中国,大写金额的使用可以防止欺诈行为,因为汉字字符比数字更难被...
在本题中,我们将讨论如何利用Qt来实现将人民币金额数字转换成大写的特性。 首先,我们要明白人民币金额大写的基本规则。在中文中,数字的大写形式有特定的对应关系,例如: 1. 零:零 2. 一至九:壹、贰、叁、肆、...
在中国的会计体系中,小写金额通常指的是阿拉伯数字表示的金额,如“123456.78”,而大写金额则是用汉字表示,例如“壹拾贰万叁仟肆佰伍拾陆元柒角捌分”。转换时,需要将每一位数字对应到相应的汉字,并处理好单位...