#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(Math.Round(Currnum, 2)).ToString());
return sResult;
}
private static string FourNumToChnNum(string Str, string ChnNum, ref Boolean Pre)
{
string[] Digits = {"零", "壹", "贰", "叁", "肆",
"伍", "陆", "柒", "捌", "玖"};
int i, j, Len;
string sResult = "";
Len = Str.Length;
for (i = 0; i < Len; i++)
{
j = Str[i] - 48;
if (0 == j)
Pre = true;
else
{
if (Pre) sResult = sResult + "零";
sResult = sResult + Digits[j] + ChnNum.Substring(Len - i - 1, 1);
Pre = false;
}
}
return sResult.Trim();
}
//将格式化好的小写串转换为大写串
private static string StringToChnNum(string str)
{
const string ChnNum1 = "圆万亿兆";
int i, Len, Len1, Level, Start;
string s1; string s;
Boolean Pre;
string sResult = "";
Len = str.IndexOf('.');
Level = (Len + 3) / 4;
Len1 = Len % 4;
if (0 == Len1) Len1 = 4;
Start = 0;
for (i = 1; i <= Level; i++)
{
Pre = false;
s = str.Substring(Start, Len1);
s1 = FourNumToChnNum(s, " 拾佰仟", ref Pre);
if (s1.Length > 0)
sResult = sResult + s1 + ChnNum1.Substring(Level - i, 1);
Start = Start + Len1;
Len1 = 4;
}
Pre = false;
s1 = FourNumToChnNum(str.Substring(Len + 1, Math.Min(2, str.Length - Len - 1)), "分角", ref Pre);
//s1 = "";
if (s1.Length == 0)
s1 = "整";
sResult = sResult + s1;
return sResult;
}
#endregion

C#:小写金额转换为大写的更多相关文章

  1. js 人民币小写金额转换为大写

    function smalltoBIG(n) { var fraction = ['角', '分']; var digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', ...

  2. JS将人民币小写金额转换为大写

    /** 数字金额大写转换(可以处理整数,小数,负数) */ function smalltoBIG(n) { var fraction = ['角', '分']; var digit = ['零', ...

  3. java将小写金额转换为大写的工具类

    public class Tool {             private static final String UNIT = "万千佰拾亿千佰拾万千佰拾元角分";      ...

  4. odoo中Python实现小写金额转换为大写金额

    自动将小写的金额数值转换为大写,方便记录 class project_parm(models.Model): def IIf(self, b, s1, s2): if b: return s1 els ...

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

    /// <summary>    /// 本类实现阿拉伯数字到大写中文的转换    /// 该类没有对非法数字进行判别,请事先自己判断数字是否合法    /// </summary& ...

  6. Java货币金额转换为大写形式

    package com.test; import java.math.BigDecimal; /** * * * 数字转换为汉语中人民币的大写<br> * */ public class ...

  7. 【C语言】创建一个函数,利用该函数将字符串中的小写字母转换为大写字母

    原理: 这类题目主要通过ASCII(美国信息交换标准代码)码差值实现,A对应ASCII码十进制数字是65,a对应ASCII码十进制数字是97,即大小写字母之间ASCII码差值为32,想要将大写字母转换 ...

  8. 【C语言】(数组)C语言字符串中的小写字母转换为大写字母

    先判断后转化 原理: 这类题目主要通过ASCII(美国信息交换标准代码)码差值实现,A对应ASCII码十进制数字是65,a对应ASCII码十进制数字是97,即大小写字母之间ASCII码差值为32,想要 ...

  9. c#将金额转换为大写,支持小数点,原创经典

    网上搜的都有问题,这个代码属于原创,代码简洁,支持小数点,若没有小数点,则为整 /// <summary> /// 将金额转换成大写 /// </summary> /// &l ...

随机推荐

  1. Android中Dialog对话框的调用及监听

    Android中经常会需要在Android界面上弹出一些对话框提示用户,比如App的退出的时候都会有各种框来挽留你的心,支付宝的时候输入密码的密码框,非常常见及其实用的功能,类似于JS中的alter, ...

  2. 内存泄漏 Memory Leaks 内存优化 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  3. 直播【95秀】JNI 基本实现 简洁

    2017-2-8 基本架构 1.使用SurfaceView在UI层面展示视频 2.通过JNI调用C代码控制视频的播放.停止 基本功能 1.从服务器获取正在直播的主播的列表信息 2.进入直播界面 3.可 ...

  4. Pinger

    import java.io.IOException;import java.io.InputStreamReader;import java.io.LineNumberReader;import j ...

  5. C++:cin、cin.getline()、getline()的用法

    主要内容: 1.cin用法 2.cin.getline()用法 3.getline()用法 3.注意的问题 一.cin>> 用法1:输入一个数字或字符 #include <iostr ...

  6. MYSQL 表中汉字写入或字段赋值时乱码情况排误

    -- 当改动字段值.或是直接写入时,汉字变成乱码情况 .[可注意一下数据库名,记得改动] -- 当字符顺序对汉字不兼容时,可能直接导致乱码情况发生. 最好做到库.表.字段(字符类型)排序规则是否一致 ...

  7. AsyncTask 和 Thread 区别

    一.AsyncTask是封装好的线程池,比起Thread+Handler的方式,AsyncTask在操作UI线程上更方便,因为onPreExecute().onPostExecute()及更新UI方法 ...

  8. htmlayout做的虎鲸宝宝

    昨天在auto论坛上偶遇一哥们作的虎鲸宝宝例子,尽管作者提供了auto的源码… … 一个C++老农的悲哀.不过大概看了下流程,最后想想:选什么样的语言已经不重要了. 最重要的是里边的资源文件可以拿来耍 ...

  9. Hibernate(八)多对多映射

    一.创建数据表 --学生证表 create table paper ( pid number primary key, pdesc ) , sid number references student( ...

  10. Node FS 读取文件中文乱码解决

    1:首先保证源文件编码方式为UTF-8 2:读取代码,设置编码方式rs.setEncoding('utf8') var fs = require('fs'); var rs = fs.createRe ...