Private Function RMBChinese(ByVal Rmb As Double) As String
Dim Rmbexp As String 
Dim Rmbda As String 
Dim Icnt As Integer 
Dim i As Integer 
Dim Trmb As String
Dim Expda As String 
Dim v1 As Integer = 0

Trmb = Format(Rmb, "###0.00")
Trmb = Trmb.Replace(".", "")
Icnt = Len(Trmb)

Rmbexp = "分角元拾佰仟萬拾佰仟億拾佰仟"

Rmbda = "壹貳叁肆伍陸柒捌玖零"

For i = 1 To Icnt

If i < Icnt - 2 Then
If Val(Mid(Trmb, i, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, i, 1)), 1)
Expda = Expda & Mid(Rmbexp, Icnt - i + 1, 1)
End If
End If

If i < Icnt - 6 And i > Icnt - 10 Then
If Val(Mid(Trmb, i, 1)) > 0 Then
v1 = 1
End If
End If

If i = Icnt - 6 Then
If Val(Mid(Trmb, Icnt - 6, 1)) = 0 Then
If v1 > 0 Then
Expda = Expda & "萬"
End If
End If
v1 = 0
End If

If i = Icnt - 10 Then
If Val(Mid(Trmb, Icnt - 10, 1)) = 0 Then
Expda = Expda & "億"
End If
End If

If Icnt > 4 And Val(Mid(Trmb, i, 1)) = 0 Then
If i < Icnt - 2 Then
If Val(Mid(Trmb, i + 1, 1)) > 0 Then
Expda = Expda & "零"
End If
End If
End If

If i = Icnt - 2 And Val(Mid(Trmb, Icnt - 2, 1)) = 0 Then
Expda = Expda & Mid(Rmbexp, 3, 1)
End If

If i = Icnt - 2 And Val(Mid(Trmb, Icnt - 2, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, Icnt - 2, 1)), 1)
Expda = Expda & Mid(Rmbexp, 3, 1)
End If

If i = Icnt - 1 And Val(Mid(Trmb, Icnt - 1, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, Icnt - 1, 1)), 1)
Expda = Expda & Mid(Rmbexp, 2, 1)
End If

If i = Icnt And Val(Mid(Trmb, Icnt, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, Icnt, 1)), 1)
Expda = Expda & Mid(Rmbexp, 1, 1)
End If

If i = Icnt And Mid(Trmb, Icnt, 1) = "0" And Mid(Trmb, Icnt - 1, 1) = "0" Then
Expda = Expda & "整"
End If
Next

If Icnt <= 14 Then
Expda = "人民幣" & Expda
RMBChinese = Expda
Else
RMBChinese = "需转换的金额整数长度超过了12位!"
End If

End Function

vb.net 数字大写的更多相关文章

  1. js完美转换阿拉伯数字为数字大写(原创)

    啥都不说,直接上代码: //阿拉伯数字转换为简写汉字 function Arabia_To_SimplifiedChinese(Num) { for (i = Num.length - 1; i &g ...

  2. php把阿拉伯数字转为银行数字大写

    php把阿拉伯数字转为银行数字大写 前言:之前在做一个外贸公司的询报价系统时用到了记录关于金额的数据,一般阿拉伯数字都需要转为银行使用的大写数字,在这简单记录一下 /* * 数字金额转换成中文大写金额 ...

  3. 将日期yyyy-MM-dd转为数字大写的形式

    /** * 将日期转大写 * 例如:2013-05-13转为 二0一三年五月十三日 * @param date * @return */ public static String getDxDate( ...

  4. Java实现数字大写转换

    需求如下:用json读取后台工时信息,比如23.5小时,需要通过编码将其转换为贰拾叁点伍 比如23.23之前有对Stringl类型强转为Double在转为整型,发生了精度丢失,后来想想对小数点进行分割 ...

  5. java开发_数字转换汉语中人民币的大写_完整版

    做这个应用,源于突然的一个想法:看到发票上面的数字要转换成汉语中人民币的大写 于是就有了下面的这些事儿..... 先看看运行效果: ================================== ...

  6. java实现数字转中文大写

    package cn.aikang.ChineseC; import java.util.Scanner; /** * @Description: TODO(这里用一句话描述这个类的作用) * @Au ...

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

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

  8. Java随机字符串:随机数字字符串,工具类

    Java中生成随机数,字符串的工具类 1. 调用方法需要传入生成字符串的长度和需要的类型 生成随机数字 生成随机字母字符串 生成随机字符串+数字等 ......... 2. 总共8种类型,具体看工具类 ...

  9. Python不使用int()函数把字符串转换为数字

    Python不使用int()函数把字符串转换为数字 2018年05月21日 14:18:45 边缘ob边缘ob 阅读数:1035 https://blog.csdn.net/qq_33192555/a ...

随机推荐

  1. CSS中清除浮动的作用以及如何清除浮动

    1.什么是浮动,浮动的作用 “浮动”从字面上来理解就是“悬浮移动.非固定”的意思.块级元素(div.table.span…)是以垂直方向排列,而在前端界面中往往要使用水平布局块级元素使界面更美观.这就 ...

  2. java获取当前日期的前一天和后一天

    /** * 获得指定日期的前一天 * @param specifiedDay * @return * @throws Exception */ public static String getSpec ...

  3. Android 流媒体技术见解

    一.技术关键点 1. 音频采集:设置合理的采样参数,包括采样率.通道数.采样深度. 2. 视频采集:手机摄像头采集输出的格式(NV12/NV21/YV12),要注意相互间的转换,以及采集出来图像的方向 ...

  4. 每天学点SpringCloud(十三):SpringCloud-Stream整合RabbitMQ

    我们知道,当微服务越来越来多的时候,仅仅是feign的http调用方式已经满足不了我们的使用场景了.这个时候系统就需要接入消息中间件了.相比较于传统的Spring项目.SpringBoot项目使用消息 ...

  5. 微信小程序的概要

    微信小程序的概要 学习小程序要了解一下什么事小程序,小程序开发前需要做哪些准备,微信小程序开发工具的使用,小程序中的目录结构解析,视图和渲染,事件. 小程序的配置详解,小程序的生命周期与app对象的使 ...

  6. 第57节:Java中流的操作以及编码解码

    我的博客: https://huangguangda.cn/ https://huangguangda.github.io/ 前言: 编码解码:编码时将信息从一种形式变成为另一种形式,成为编码.编码为 ...

  7. [Postman]Postman导航(3)

    Postman提供了一个多窗口和多标签界面,供您使用API​​. 此界面设计为您提供尽可能多的API空间. 侧边栏 邮差侧边栏可让您查找和管理请求和集合.侧边栏有两个主要选项卡:  历史记录  和   ...

  8. 提纲挈领webrtc音频处理算法之写在前面的话

    最近工作用到了webrtc,发现webrtc是个宝库,里面有很多东西值得好好研究. 搜了这方面不少资料,发现介绍使用webrtc的不少,但是针对里面一些算法研究的 不多.特别是能把算法说的简洁明了的更 ...

  9. 内存管理-buddy[代码]

    基于2.6.32内核源码分析 首选内存区和gfp描述符关系运算 64位系统默认没有开启CONFIG_HIGHMEM选项,因此只有4个内存区DMA(0),DMA32(1),NORMAL(2),MOVAB ...

  10. Storm WordCount

    特别注意,在本地运行的时候应该去掉<scope>provided</scope>,否则会报java.lang.ClassNotFoundException: org.apach ...