C#数字金额转换大写金额

C#数字金额转人民币大写金额的实现 要过年了,朋友圈里充斥着各种年的味道,还有一种特别的朋友圈今年格外显眼,好像一股气流冲击着我的小心脏,2022真的是太难了。这里,专门为各位老板写了一套数字金额转人民币大写金额的实现方法,希望大家都能过个好年,希望来年大家都不再为了那二两碎银而心烦。 阅读详情
public string CmycurD(decimal num)
        {
            string str1 = "零壹贰叁肆伍陆柒捌玖";            //0-9所对应的汉字 
            string str2 = "万仟佰拾亿仟佰拾万仟佰拾元角分"; //数字位所对应的汉字 
            string str3 = "";    //从原num值中取出的值 
            string str4 = "";    //数字的字符串形式 
            string str5 = ""; //人民币大写金额形式 
            int i;    //循环变量 
            int j;    //num的值乘以100的字符串长度 
            string ch1 = "";    //数字的汉语读法 
            string ch2 = "";    //数字位的汉字读法 
            int nzero = 0; //用来计算连续的零值是几个 
            int temp;            //从原num值中取出的值

            num = Math.Round(Math.Abs(num), 2);    //将num取绝对值并四舍五入取2位小数 
            str4 = ((long)(num * 100)).ToString();        //将num乘100并转换成字符串形式 
            j = str4.Length;      //找出最高位 
            if (j > 15) { return "溢出"; }
            str2 = str2.Substring(15 - j);   //取出对应位数的str2的值。如:200.55,j为5所以str2=佰拾元角分

            //循环取出每一位需要转换的值 
            for (i = 0; i < j; i++)
            {
                str3 = str4.Substring(i, 1);          //取出需转换的某一位的值 
                temp = Convert.ToInt32(str3);      //转换为数字 
                if (i != (j - 3) && i != (j - 7) && i != (j - 11) && i != (j - 15))
                {
                    //当所取位数不为元、万、亿、万亿上的数字时 
                    if (str3 == "0")
                    {
                        ch1 = "";
                        ch2 = "";
                        nzero = nzero + 1;
                    }
                    else
                    {
                        if (str3 != "0" && nzero != 0)
                        {
                            ch1 = "零" + str1.Substring(temp * 1, 1);
                            ch2 = str2.Substring(i, 1);
                            nzero = 0;
                        }
                        else
                        {
                            ch1 = str1.Substring(temp * 1, 1);
                            ch2 = str2.Substring(i, 1);
                            nzero = 0;
                        }
                    }
                }
                else
                {
                    //该位是万亿,亿,万,元位等关键位 
                    if (str3 != "0" && nzero != 0)
                    {
                        ch1 = "零" + str1.Substring(temp * 1, 1);
                        ch2 = str2.Substring(i, 1);
                        nzero = 0;
                    }
                    else
                    {
                        if (str3 != "0" && nzero == 0)
                        {
                            ch1 = str1.Substring(temp * 1, 1);
                            ch2 = str2.Substring(i, 1);
                            nzero = 0;
                        }
                        else
                        {
                            if (str3 == "0" && nzero >= 3)
                            {
                                ch1 = "";
                                ch2 = "";
                                nzero = nzero + 1;
                            }
                            else
                            {
                                if (j >= 11)
                                {
                                    ch1 = "";
                                    nzero = nzero + 1;
                                }
                                else
                                {
                                    ch1 = "";
                                    ch2 = str2.Substring(i, 1);
                                    nzero = nzero + 1;
                                }
                            }
                        }
                    }
                }
                if (i == (j - 11) || i == (j - 3))
                {
                    //如果该位是亿位或元位,则必须写上 
                    ch2 = str2.Substring(i, 1);
                }
                str5 = str5 + ch1 + ch2;

                if (i == j - 1 && str3 == "0")
                {
                    //最后一位(分)为0时,加上“整” 
                    str5 = str5 + '整';
                }
            }
            if (num == 0)
            {
                str5 = "零元整";
            }
            return str5;
        }
public string toN2(double num)
        {
            string str = string.Format("{0:N2}", num);
            return str;
        }

C#金额转大写的方法 最近搞的项目里面有个财务模块,需要把数字金额转为大写显示,网上搜了一下要么代码太繁琐要么不符合书写习惯(会出现零佰零仟,整数没有结尾之类的问题),于是琢磨了一下自己写了个方法。原理很简单,就是循环替换数字,添加单位,然后再来一个循环排除例外情况。 代码如下: public string NumtoChinese(decimal s) { 阅读详情

相关推荐

C#金额小写转大写

public string ConvertMoney(decimal Money) { //金额转换程序 string MoneyNum = "";//记录小写金额字符串[输入参数] string MoneyStr = "";//记录大写金额字符串[输出参数] string BNumSt

智慧空间实验室 4576

c#人民币金额大写数字互相转换

人民币中文大写和数字小写之间的转换代码

happylshk的博客 922

C#金额数字大写转换_含元整

C#语言的对金额的大写转换,包括圆整等,可以直接复制使用,亲测过。

C#将金额转换为大写金额

using System; using System.Collections.Generic; using System.Linq; using System.Web;   public class DecimalToPrice {     public DecimalToPrice()     {     }     //大小写转换函数     static public

LYBWWP 1439

QT编程之PCM音频播放与采集

Qt5/Qt6通用方案。

深之JohnChen的专栏 1169

从零构建机械臂规划栈:Pinocchio、OMPL与Ruckig的工程化融合实践

本文详细介绍了如何从零构建机械臂规划栈,通过融合Pinocchio、OMPL和Ruckig三大核心组件,实现高性能的机械臂运动规划与轨迹生成。文章深入探讨了技术选型、工程架构设计及实战优化技巧,特别针对逆解、路径规划和轨迹平滑等关键环节提供了实用解决方案,适用于工业场景中的高实时性需求。

weixin_29072299的博客 433

C# 实现将阿拉伯数字转换成中文大写金额

public static string CmycurD(decimal num)         {             string str1 = "零壹贰叁肆伍陆柒捌玖";            //0-9所对应的汉字             string st

Stay hungry,stay foolish。 973

机器学习入门基础 | 基于python的高光谱图像特征挖掘:PCA + 形态学属性处理可视化实战

本文介绍了一种基于PCA和形态学操作的高光谱图像特征提取方法。通过主成分分析降低数据维度,再运用面积开闭操作增强空间结构特征,有效去除噪声并填补孔洞。实验采用WHU-HI-HanChuan数据集,提供完整的Python实现代码,包括数据加载、PCA降维、形态学处理及结果可视化等步骤。该方法能够显著改善图像质量,为后续分类和变化检测任务提供更好的特征输入。实验结果表明,不同阈值的形态学处理能呈现不同程度的空间结构增强效果,对区域生长、分割和聚类等应用具有重要价值。

lestatlu的博客 1046

C#实现阿拉伯数字(小写金额)到大写中文(大写金额)的转换

/// <summary> /// 本类实现阿拉伯数字到大写中文的转换 /// 该类没有对非法数字进行判别,请事先自己判断数字是否合法 /// </summary> public class ChineseNum {   //小写转大写 public static string GetChineseNum(string p_num...

weixin_34358365的博客 274

《雷达入门课 》系列文章(5)线性调频连续波雷达基本原理(第1讲)

S=B/Tc,是调频斜率。这里的混频公式推导过程比较简单,具体的混频过程如果感兴趣可以看下面粗略的推导,混频的本质就是频谱搬移,分为上变频和下变频,一般我们用下变频,即差频信号,因此需要一个低通滤波器即可滤出我们所需要的信号。答案就是因为中频信号能够映射出目标的距离信息,换句话说就是目标的距离不一样,返回的时间τ也就不一样,因此中频信号的频率大小也就不一样,可以说距离和中频信号是成映射关系的。中频只是表示信号频段的程度词,不是表示信号的状态词,意思就是说中频是指信号的频率不是很高,正好处于中间的地位。

【调皮连续波】雷达技术领域知识博主 6022

Kali下RTL8812AU网卡5G抓包精准适配指南

WiFi监听模式是无线安全测试的基础能力,其核心在于网卡驱动对802.11a/n/ac协议栈的完整支持。RTL8812AU系列USB无线网卡因成本低、兼容性广被广泛用于渗透测试,但其芯片版本碎片化(如VA/VC/ACM)与Linux内核演进(6.1~6.5)存在严重适配断层,导致5GHz频段Beacon帧捕获失败、信道切换异常、注入功能残缺等典型问题。技术价值在于突破‘即插即用’幻觉,建立从USB设备ID识别、固件版本校验到射频寄存器级补丁的全链路可控流程。典型应用场景包括CTF无线赛题实战、红蓝对抗中的W

weixin_33783283的博客 762

将金额转换到大写数字的C#函数

//最大支持99,999,999.99元private string ChMoney(float Money){ string[] MChar={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"}; string[] MUnit = {"分","角","元","拾","佰","仟","万","拾","佰","仟"}; string strMoney = ((long)

流星雨驿 1551

Zotero内存占用与存储优化:从根源解决卡顿与空间不足

文献管理软件在学术工作中扮演着重要角色,其核心原理是通过数据库管理元数据与附件文件,实现文献的快速检索与组织。然而,随着文献库规模增长,软件的资源管理机制可能面临挑战,尤其是内存占用与存储空间优化问题。从技术价值看,高效的附件管理策略不仅能提升软件响应速度,还能确保数据安全与可移植性。在实际应用场景中,研究者常遇到软件卡顿、存储目录膨胀等痛点,这通常与附件存储模式、缓存机制及数据库维护有关。本文聚焦于Zotero这一主流工具,针对其内存占用高、文件无法删除等常见问题,提供了外置存储、链接附件、数据库维护等系

weixin_34209060的博客 457

C#实现的【阿拉伯数字转换成中文大写金额】代码(原创)

以下C#代码实现了将阿拉伯数字转换成中文大写金额的功能,并Visual Studio.NET 2003 下调试基本通过(未经严格测试,希望各位发现错误后与作者联系fanz2000@sohu.com,或直接在csdn上回帖告知)。代码的主调函数为ConvertSum,它的参数是string类型的数字字符串。在ASP.NET中调用方式如下:Label1.Text=ConvertSum("数字字符串

fanz2000的专栏 6322

2025年09月中国电子学会青少年软件编程(Python)等级考试试卷(三级)答案 + 解析

2025年09月中国电子学会青少年软件编程(Python)等级考试试卷(三级)答案 + 解析

伶俐角少儿编程 515

Docker-Nvidia(NVIDIA Container Toolkit)

安装NVIDIA Container Toolkit工具,支持docker使用GPU。

周陽讀書 3820

阿拉伯数字的金额转换为中文大写C#

<br />using System; using System.Text.RegularExpressions; class Program { // 把阿拉伯数字的金额转换为中文大写数字 static string ConvertToChinese(double x) { string s = x.ToString("#L#E#D#C#K#E#D#C#J#E#D#C#I#E#D#C#H#E#D#C#G#E#D#C#F#E#D#C#.0B0A"); stri

432

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

C#写的将阿拉伯数字转换成中文大写金额代码

C#写的将阿拉伯数字转换成中文大写金额代码  

golden的专栏 2297

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

数字转换成大写金额(C#实现)

//例如:(newMoney(200)).ToString()=="贰佰元"namespaceSkyiv.Util{usingSystem.Text;classTest{staticvoidMain(){for(;;){System.Console.Write("金额:");strings...

weixin_30655219的博客 81

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

C# 数字转换大写金额

        string[] bitStr ={ "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };//定义个位数字        string[] medianStr ={ "", "拾", "佰", "仟" };        string[] pointStr ={ "角", "分" };        ///         ///

Fibona的专栏 1941

C#实现的【阿拉伯数字转换成中文大写金额】代码

 以下C#代码实现了将阿拉伯数字转换成中文大写金额的功能,并Visual Studio.NET 2003 下调试基本通过(未经严格测试,希望各位发现错误后与作者联系fanz2000@sohu.com,或直接在csdn上回帖告知)。代码的主调函数为ConvertSum,它的参数是string类型的数字字符串。在ASP.NET中调用方式如下:Label1.Text=ConvertSum("数字

1582

C#中数字金额转换大写金额方法

代码的主调函数为ConvertSum,它的参数是string类型的数字字符串。在ASP.NET中调用方式如下:         Label1.Text=ConvertSum("数字字符串");        其代码如下:            /// 转换数字金额主函数(包括小数)          ///          /// 数字字符串          /// 转

【平平】的优快云空间 758

C#实现数字到人民币大写金额的转换

在开发会计软件或企业资源规划(ERP)系统时,为了满足客户的特定需求,可能会集成这个功能,以便在生成相关文档时自动将数字转换为人民币大写形式。:虽然银行系统内部通常使用数字形式记录交易金额,但在提供给客户的对账单或交易记录中,可能会包含人民币大写形式的金额,以便客户更容易核对和理解。:在编制财务报表时,特别是需要对外公布的报表,如年度财务报告,可能会将某些关键数字以人民币大写形式呈现,以提高可读性和正式性。:在生成发票或收据时,通常需要将金额以人民币大写形式打印出来,以防止篡改,并作为法律上的有效凭证。

学习和分享 827

C#把数字转换为大写金额

 private string ToBigNumber(long number)        {            // 12345 一万贰仟叁佰肆拾伍            string[] mm ={ "", "拾", "佰", "仟", "万", "拾", "佰",                          "仟", "亿", "拾", "佰", "仟", "万" };  

632
上一篇: OneNote 2003 中文版 完整 单独安装程序 下载
下一篇: 如何制作GIF图片 使用Ulead GIF Animator 5
Fanny
博客等级 码龄20年 9粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值