jQuery人民币转大写,C#人命币转大写

时间:2024-06-22 13:06:02
jQuery人民币转大写 
 function convertCurrency(money) {
//汉字的数字
var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖');
//基本单位
var cnIntRadice = new Array('', '拾', '佰', '仟');
//对应整数部分扩展单位
var cnIntUnits = new Array('', '万', '亿', '兆');
//对应小数部分单位
var cnDecUnits = new Array('角', '分', '毫', '厘');
//整数金额时后面跟的字符
var cnInteger = '整';
//整型完以后的单位
var cnIntLast = '元';
//最大处理的数字
var maxNum = 999999999999999.9999;
//金额整数部分
var integerNum;
//金额小数部分
var decimalNum;
//输出的中文金额字符串
var chineseStr = '';
//分离金额后用的数组,预定义
var parts;
if (money == '') { return ''; }
money = parseFloat(money);
if (money >= maxNum) {
//超出最大处理数字
return '';
}
if (money == ) {
chineseStr = cnNums[] + cnIntLast + cnInteger;
return chineseStr;
}
//转换为字符串
money = money.toString();
if (money.indexOf('.') == -) {
integerNum = money;
decimalNum = '';
} else {
parts = money.split('.');
integerNum = parts[];
decimalNum = parts[].substr(, );
}
//获取整型部分转换
if (parseInt(integerNum, ) > ) {
var zeroCount = ;
var IntLen = integerNum.length;
for (var i = ; i < IntLen; i++) {
var n = integerNum.substr(i, );
var p = IntLen - i - ;
var q = p / ;
var m = p % ;
if (n == '') {
zeroCount++;
} else {
if (zeroCount > ) {
chineseStr += cnNums[];
}
//归零
zeroCount = ;
chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
}
if (m == && zeroCount < ) {
chineseStr += cnIntUnits[q];
}
}
chineseStr += cnIntLast;
}
//小数部分
if (decimalNum != '') {
var decLen = decimalNum.length;
for (var i = ; i < decLen; i++) {
var n = decimalNum.substr(i, );
if (n != '') {
chineseStr += cnNums[Number(n)] + cnDecUnits[i];
}
}
}
if (chineseStr == '') {
chineseStr += cnNums[] + cnIntLast + cnInteger;
} else if (decimalNum == '') {
chineseStr += cnInteger;
}
return chineseStr;
}

C#人命币转大写

       #region 金额转大写

        public static string ChangeMoneyToString(double num)
{
const string str1 = "零壹贰叁肆伍陆柒捌玖";
string str2 = "万仟佰拾亿仟佰拾万仟佰拾元角分";
string str3;
string str5 = "";
int i;
string ch1;
string ch2 = "";
int nzero = ;
int temp; num = Math.Round(Math.Abs(num), );
string str4 = ((long)(num * )).ToString();
int j = str4.Length;
if (j > )
{
return "溢出";
}
str2 = str2.Substring( - j); for (i = ; i < j; i++)
{
str3 = str4.Substring(i, );
temp = Convert.ToInt32(str3);
if (i != (j - ) && i != (j - ) && i != (j - ) && i != (j - ))
{
if (str3 == "")
{
ch1 = "";
ch2 = "";
nzero = nzero + ;
}
else
{
if (str3 != "" && nzero != )
{
ch1 = "零" + str1.Substring(temp * , );
ch2 = str2.Substring(i, );
nzero = ;
}
else
{
ch1 = str1.Substring(temp * , );
ch2 = str2.Substring(i, );
nzero = ;
}
}
}
else
{
if (str3 != "" && nzero != )
{
ch1 = "零" + str1.Substring(temp * , );
ch2 = str2.Substring(i, );
nzero = ;
}
else
{
if (str3 != "" && nzero == )
{
ch1 = str1.Substring(temp * , );
ch2 = str2.Substring(i, );
nzero = ;
}
else
{
if (str3 == "" && nzero >= )
{
ch1 = "";
ch2 = "";
nzero = nzero + ;
}
else
{
if (j >= )
{
ch1 = "";
nzero = nzero + ;
}
else
{
ch1 = "";
ch2 = str2.Substring(i, );
nzero = nzero + ;
}
}
}
}
}
if (i == (j - ) || i == (j - ))
{
ch2 = str2.Substring(i, );
}
str5 = str5 + ch1 + ch2; if (i == j - && str3 == "")
{
str5 = str5 + '整';
}
}
if (num == )
{
str5 = "零元整";
}
return str5;
} #endregion