将人民币的数字表示转化成大写表示(C#版)
using System;
namespace Test.Com
{
/// <summary>
/// 功能:字符串处理函数集
/// </summary>
public class DealString
{
#region 私有成员
/// <summary>
/// 输入字符串
/// </summary>
private string inputString=null;
/// <summary>
/// 输出字符串
/// </summary>
private string outString=null;
/// <summary>
/// 提示信息
/// </summary>
private string noteMessage=null;
#endregion
#region 公共属性
/// <summary>
/// 输入字符串
/// </summary>
public string InputString
{
get{return inputString;}
set{inputString=value;}
}
/// <summary>
/// 输出字符串
/// </summary>
public string OutString
{
get{return outString;}
set{outString=value;}
}
/// <summary>
/// 提示信息
/// </summary>
public string NoteMessage
{
get{return noteMessage;}
set{noteMessage=value;}
}
#endregion
#region 构造函数
public DealString()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
#endregion
#region 公共方法
public void ConvertToChineseNum()
{
string numList="零壹贰叁肆伍陆柒捌玖";
string rmbList = "分角元拾佰仟万拾佰仟亿拾佰仟万";
double number=0;
string tempOutString=null;
try
{
number=double.Parse(this.inputString);
}
catch
{
this.noteMessage="传入参数非数字!";
return;
}
if(number>9999999999999.99)
this.noteMessage="超出范围的人民币值";
//将小数转化为整数字符串
string tempNumberString=Convert.ToInt64(number*100).ToString();
int tempNmberLength=tempNumberString.Length;
int i=0;
while(i<tempNmberLength)
{
int oneNumber=Int32.Parse(tempNumberString.Substring(i,1));
string oneNumberChar=numList.Substring(oneNumber,1);
string oneNumberUnit=rmbList.Substring(tempNmberLength-i-1,1);
if(oneNumberChar!="零")
tempOutString+=oneNumberChar+oneNumberUnit;
else
{
if(oneNumberUnit=="亿"||oneNumberUnit=="万"||oneNumberUnit=="元"||oneNumberUnit=="零")
{
while (tempOutString.EndsWith("零"))
{
tempOutString=tempOutString.Substring(0,tempOutString.Length-1);
}
}
if(oneNumberUnit=="亿"||(oneNumberUnit=="万"&&!tempOutString.EndsWith("亿"))||oneNumberUnit=="元")
{
tempOutString+=oneNumberUnit;
}
else
{
bool tempEnd=tempOutString.EndsWith("亿");
bool zeroEnd=tempOutString.EndsWith("零");
if(tempOutString.Length>1)
{
bool zeroStart=tempOutString.Substring(tempOutString.Length-2,2).StartsWith("零");
if(!zeroEnd&&(zeroStart||!tempEnd))
tempOutString+=oneNumberChar;
}
else
{
if(!zeroEnd&&!tempEnd)
tempOutString+=oneNumberChar;
}
}
}
i+=1;
}
while (tempOutString.EndsWith("零"))
{
tempOutString=tempOutString.Substring(0,tempOutString.Length-1);
}
while(tempOutString.EndsWith("元"))
{
tempOutString=tempOutString+"整";
}
this.outString=tempOutString;
}
#endregion
}
}
转载于:https://www.cnblogs.com/hzuIT/articles/682812.html
将人民币的数字表示转化成大写表示(C#版)相关推荐
- 如何将数字123转化成大写的文字 一百二十三 或 一二三?
相信大家在前端开发过程中经常遇到需要显示章目的情况,例如: 在 Vue 中我们可以用 v-for 处理列表数据显示这样的列表,但是 我们只能通过 Index 获得 [0,1,2,3,4] ,显然我们需 ...
- 将阿拉伯数字转化成大写的人民币数字
将阿拉伯数字转化成大写的人民币数字 public String getNumberToRMB(String m) ... { String num = "零壹贰叁肆伍陆柒捌玖&q ...
- 把数字小写转换成大写,把数字转化成英文
把数字小写转换成大写 方法一,使用系统提供的函数,但是不满足大陆财务的要求. 方法二:使用下面的函数. 英文: static str Num2EngStr(real realNum,boo ...
- 将整型数字转化成大写格式
将整型数字转化成大写格式 将整型数字转化成大写格式 我们日常报表的打印,单据打印,借据.收据打印等等操作都需要用到将金额装换成大写,防止交易双方通过修改单据数字,因而我们的信息管理系统就把账单的金额转 ...
- C语言自学路之将小写数字完美转换成大写数字
C语言自学路之将小写数字完美转换成大写数字 # define N 6:6位及以内的整数(小数点后不计) PS:中间两条测试数组正确性的可以忽视,我只是每敲一点都喜欢运行测试一下- #include & ...
- java大写转化小写的同时小写转化成大写的方法
/*进行小写转化成大写,大写转化成小写*/ public class Text {public static void main(String[] arges) {String str = " ...
- 【简单易懂】Java字符串应用场景:数字金额转换成大写汉字金额【金额转换】
Java字符串应用场景:数字金额转换成汉字金额 文章目录 Java字符串应用场景:数字金额转换成汉字金额 前言 一.String简单介绍 二.字符串在开发中的应用场景 三.金额转换 3.1解题思路 3 ...
- excel小写转大写公式_EXCEL中文小写数字怎么转化成阿拉伯数字呢?
把阿拉伯数字转化成中文小写数字,我们都知道,通过单元格格式设置就可以实现,如下图: 但是上面的转化有时并不能满足我们的需求,比如,我们需要把13转化成十三,而不是一十三,这时我们该怎么办呢? 下面我们 ...
- php 把数字转化为大写中文(完善版)
*** 将数值金额转换为中文大写金额* @param $amount float 金额(支持到分)* @param $type int 补整类型,0:到角补整;1:到元补整* @return mixe ...
最新文章
- 普华永道报告:区块链不只是比特币!将改变这8大领域|附下载
- 蓝桥杯-01字串(java)
- CloudCC CRM探讨如何建立完善的服务体系
- Linux系统中解压缩指令汇总
- 简单讲述一下Intent的传值过程
- json转python_将“true”(JSON)转换为Python等效的“True”
- 【MySQL】MySQL负载均衡常见方法
- 地产IT人福利:帆软地产BI解决方案全解析
- buck电路matlab,matlab buck电路仿真
- 如何在 Linux 中使用 AppImage
- Lucene和ES的关系
- 【渝粤教育】 广东开放大学21秋期末考试法律文书10684k2
- Python 随笔之Redis
- 基于 Docker 的几种常用 CentOS7 镜像
- Java实现杨辉三角形
- SQL中计算字符串的长度函数
- 自制StartUp宏病毒专杀小工具
- Unity制作UI翻页动画
- 五、python 缺失值处理(Imputation)
- Putty 下载安装