c#金额转大写

public static string ToMoneyUpper(this int intMoney)

{

string money = string.Empty;

string[] z = new string[] { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };

string[] y = new string[] { "", "拾", "佰", "仟" };

string[] x = new string[] { "", "万", "亿", "兆" };

string strMoney = intMoney.ToString();

int len = strMoney.Length;

if (len == 1)

{

money = z[intMoney];

}

else

{

for (int i = 1; i <= len; i++)

{

int j = int.Parse(strMoney.Substring(i - 1, 1));

money = money + z[j];

if (j > 0) //如果大于零,加入十进位字符

{

money = money + y[(len - i) % 4];

}

money = money.Replace("零零", "零");

if ((len - i) % 4 == 0 && money.EndsWith("零"))

{

money = money.Substring(0, money.Length - 1);   //每四位加入进阶

}

if ((len - i) % 4 == 0)

{

money = money + x[(len - i) / 4];   //把最后的零去掉

}

}

}

return money;

}

时间: 2024-12-29 06:43:58

c#金额转大写的相关文章

将一个数转化为中文金额的大写方式(有详细的解题步骤)

1 /* 2 * 程序目的: 从命令行输入一个数,并将其转化为中文金额的大写方式 3 * 思路: 4 * 所需对象:用到两个数组,一个存中文大写的数字,一个存金额单位: 5 * 为了保持精度的相对准确,用到BigDecimal类:(不懂的朋友,上网一查就知道了): 6 * 我这里用了StringBuilder类来存转化后的结果:(其实用String,StringBuffer都可以) 7 * 过程:输入一个double类型的数———>转化为BigDecimal类的对象———>四舍五入后转化为lo

BPM实例分享——金额规则大写

金额规则大写 在涉及金额的流程中经常会遇到需要大写金额数据与小写金额匹配,如何实现输入数字后自动转换呢? 初级用法: 1.在默认表单基本属性javascript 中增加如下金额转换方法 /** 数字金额大写转换(可以处理整数,小数,负数) */ function chineseNumber(dValue) { var maxDec = 2; // 验证输入金额数值或数值字符串: dValue = dValue.toString().replace(/,/g, ""); dValue =

用链表实现表单金额的大写格式输出

1 include<iostream> 2 using namespace std; 3 #include<string> 4 5 typedef int T; 6 7 class List{ 8 struct Node{ 9 T data1; 10 string data2; 11 Node* next; 12 Node(const T& t=T(), string s=string()):data1(t),data2(s){next = NULL;} 13 }; 14

C#:小写金额转换为大写

#region 小写金额转换为大写 public static string CurrToChnNum(double Currnum) { string sResult = ""; if (Math.Abs(Currnum) < 1e-20) return "零圆整"; if (Currnum < 1e-20) sResult = "负"; sResult = sResult + StringToChnNum(Math.Abs(Mat

Oracle 小写金额转换为大写

在开发EBS的合同报表打印的时候需要将小写金额转换为大写. 如下是本人自己写的转换函数. 主要思路:先获取小数点位置,在区分整数与小数点处理,根据位数和数字组合读取金额. 最后再处理特殊显示部分. /******************************************************************* *  FUNCTION get_big_amount 数字金额转换为大写 *  p_amount 输入数据金额 *  返回大写金额,位数 :千亿----厘 ****

js金额转大写数字

//金额转大写数字 const intToChinese = money => { //汉字的数字 let cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'); //基本单位 let cnIntRadice = new Array('', '拾', '佰', '仟'); //对应整数部分扩展单位 let cnIntUnits = new Array('', '万', '亿', '兆'); //对应小数部分单位

SQL金额转大写

create function [dbo].[fn_getformatmoney] (@money numeric(14,2)) returns nvarchar(32) as begin declare @money_num nvarchar(20) --存储金额的字符形式 , @money_chn nvarchar(32) --存储金额的中文大写形式 , @n_chn nvarchar(1), @i int --临时变量 select @money_chn=case when @money>

数字金额转换大写人民币

using System;using System.Collections.Generic;using System.Text; namespace PublicClass{    /// <summary>    /// Copyright(c) 2008~2011 KingBoy Software Co.,Ltd    /// FileName:大写人民币类    /// Author:KingBoy  Version:1.0.0.0  Date:2009-3-05    /// Desc

js金额转换大写

从tenpay找到的一段将金额小写转换成大写的js代码: 1 var DX = function (num) { 2 var strOutput = ""; 3 var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分'; 4 num += "00"; 5 var intPos = num.indexOf('.'); 6 if (intPos >= 0) 7 num = num.substring(0, intPos) + num.substr(intPos

SQL标量值函数:小写金额转大写

我们日常开发业务系统中,作为统计报表中,特别是财务报表,显示中文金额经常遇到. 转换大小写的方法有很多,以下是从数据库函数方面解决这一问题. 效果如图: 调用:SELECT dbo.[Fn_ConvertRMB](192.4) 具体函数如下: -- ============================================= -- 调用:SELECT dbo.[Fn_ConvertRMB](192.4) -- Create date: 2015-01-06 -- Descripti