数字货币转换为中文货币

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>数字货币到中文货币的转换</title>
<script type="text/javascript" language="javascript">

function Transform()
{
 
 var num =document.getElementById("num").value;
 for(i=num.length-1;i>=0;i--)
 {
  num=num.replace(",","");//替换文本框中的“,”
  num=num.replace(" ","");//替换文本框中的空格 
 }

num=num.replace("¥","");//替换掉可能出现的¥字符
 if(isNaN(num))
 {
  //验证输入的字符是否为数字
  alert("请检查输入的金额是否正确");
  return; 
 }

//---字符处理完毕,开始转换,转换采用前后两部分分别转换---//
 part=new String(num).split(‘.‘);
 newchar="";
 //小数点前进行转化
 for(i=part[0].length-1;i>=0;i--)
 {
  if(part[0].length>10)
  {
   alert("为数过大,无法计算");
   return"";
  }
  //若数量超过拾亿单位,提示=
  tmpnewchar=""
  var 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:
                if (perchar != 0)
                    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("零角","");
 newcahr=newchar.replace("零分","");
 if(newchar.charAt(newchar.length-1)=="元"||newchar.charAt(newchar.length-1)=="角")
 newchar=newchar+"整";
 alert(newchar);
}
</script>

<body>
<form action="" method="post" name="form1">
  数字货币:
  <input type="text" name="num" id="num" />
  <input type="button" name="btn1" id="button" value="转换" onclick="Transform()"/>
</form>
</body>
</html>

数字货币转换为中文货币,布布扣,bubuko.com

时间: 2024-08-24 04:41:58

数字货币转换为中文货币的相关文章

SSRS 实现数字金额转换为中文大写汉字

比如: 金额=49,701,120.00,将其转换为"肆仟玖佰柒拾万壹仟壹佰贰拾元整":金额 289,546.52 ,转换为 "贰拾捌万玖仟伍佰肆拾陆元伍角贰分". 解决方法:添加VB的转换函数写在CODE里,然后在表达式里调用自定义函数转换. 如:增加两个占位符表达式,如小数位为0时表达式2添加"整", 表达式1=Code.GetCnString(Fields!Amount.Value) 表达式2=IIF(Fields!Amount.Value

浮点数转换为大写货币金额

/** * 浮点数转换为大写货币金额 * * @author Bobby * */ public class ConvertFloatNumToRMBFormat { private static String[] upperCaseArray = { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌&

【iOS开发系列】将阿拉伯数字转换为中文数字

/** * 将阿拉伯数字转换为中文数字 */ +(NSString *)translationArabicNum:(NSInteger)arabicNum { NSString *arabicNumStr = [NSString stringWithFormat:@"%ld",(long)arabicNum]; NSArray *arabicNumeralsArray = @[@"1",@"2",@"3",@"4&q

JS将数字转换为中文

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>JS将数字转换为中文</title> </head> <body> <script> // 定义转换函数 function transform(tranvalue){ try{ var i=1; var dw2 = new Array("",

日期转换为中文大写数字

动手写一个转换日期的小方法,虽然很短,但是需要考虑的东西还是挺多的,记录一下. /// <summary> /// 将日期转换为中文大写 /// 如:一九八三 十一 二十七 /// </summary> public class ChineseNumberHelper { static Dictionary<int, string> _theNumOfChineseCapital = new Dictionary<int, string>() { {0,&q

将数字n转换为字符串并保存到s中

参考 C程序设计语言 #include <stdio.h> #include <string.h> //reverse函数: 倒置字符串s中各字符的位置 void reverse(char s[]){ int c,i,j; for(i=0,j=strlen(s)-1;i<j;i++,j--){ c=s[i], s[i]=s[j], s[j]=c; } } //itoa函数: 将数字n转换为字符串并保存到s中 void itoa(int n, char s[]){ int i,

在C#中将数字转换成中文

上篇我们讲了在MSSQL中将数字转换成中文,这篇我们讲讲在C#中将数字转换成中文 下篇将讲一下如何将金额转换成中文金额,废话不多说,具体代码如下: /// <summary> /// 数字转中文 /// </summary> /// <param name="number">eg: 22</param> /// <returns></returns> public string NumberToChinese(in

C#验证字符串是否是数字,是否包含中文,是否是邮箱格式,是否是电话格式

using System; using System.Web; using System.Text; using System.Web.UI.WebControls; using System.Text.RegularExpressions; public class ValidateHelper { private static Regex RegNumber = new Regex("^[0-9]+$"); private static Regex RegNumberSign =

JavaScript为unicode编码转换为中文

代码laycode - v1.1 关于这样的数据转换为中文问题,常用的以下方法. 1. eval解析或new Function("'+ str +'")()  str = eval("'" + str + "'"); // "我是unicode编码" 1 代码laycode - v1.1 2. unescape 解析  str = unescape(str.replace(/\u/g, "%u")); //