• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    如何实现人民币的大写转换?

    第一个办法,这个程序可以进行万亿以下的货币金额转换(够用的了吧),其中汉字与数字均按一位计:

    Function AtoC(a As Currency) As String
         '
    定义两个字符串,A的值最多是两位小数.
        Dim String1 As String 

    ' 如下定义.
        Dim String2 As String 

    ' 如下定义.
        Dim String3 As String 

    ' 从原A值中取出的值.
        Dim I As Integer       

     ' 循环变量.

        Dim J As Integer       

    ' A的值乘以100的字符串长度.
        Dim Ch1 As String     

    ' 数字的汉语读法.
        Dim Ch2 As String     

    ' 数字位的汉字读法.
        Dim nZero As Integer   

    ' 用来计算连续的非零数是几个.

        String1 = "
    零壹贰叁肆伍陆柒捌玖"
        String2 = "
    万仟佰拾亿仟佰拾万仟佰拾元角分"
        'MsgBox CStr(a * 100)
        If InStr(1, CStr(a * 100), ".") > 0 Then
            err.Raise 5000, , "
    该函数( AtoC() )只转换两位小数以内的数值!"
        End If

        J = Len(CStr(a * 100))
        String2 = Right(String2, J)       

    ' 取出对应位数的StrING2的值.

        For I = 1 To J
            String3 = Mid(a * 100, I, 1)   

    ' 取出需转换的某一位的值.
            If String3 > "0" Then
                Ch1 = Mid(String1, Val(String3) + 1, 1)
                Ch2 = Mid(String2, I, 1)
                nZero = nZero + 1         

    ' 表示本位不为零.
            Else
                If nZero > 0 Or I = J - 9 Or I = J - 5 Or I = J - 1 Then
                    If Right(AtoC, 1) = "
    " Then AtoC = Left(AtoC, Len(AtoC) - 1)
                    Ch1 = "
    "
                Else
                    Ch1 = ""
                End If
                                      

    If I = J - 10 Then

    ' 如果转换的数值需要扩大,则要改动以下表达式 I 的值.
                    Ch2 = "
    亿"
                ElseIf I = J - 6 Then
                    If nZero > 0 Then
                        Ch2 = "
    "
    '                    nZero = 0
                    End If
                ElseIf I = J - 2 Then
                    Ch2 = "
    "
                ElseIf I = J Then
                    Ch2 = "
    "
                Else
                    Ch2 = ""
                End If
                nZero = 0
            End If

            AtoC = AtoC Ch1 Ch2
        Next I

            AtoC = Replace(AtoC, "零元", "")
            AtoC = Replace(AtoC, "
    零万", "")
            AtoC = Replace(AtoC, "
    零亿", "亿")
            AtoC = Replace(AtoC, "
    零整", "")
           '
    以上将多余的零去掉

    End Function

     

    第二个办法:照下面写就成了!

    %
    dim str(9)
    str(0)="
    "
    str(1)="
    "
    str(2)="
    "
    str(3)="
    "
    str(4)="
    "
    str(5)="
    "
    str(6)="
    "
    str(7)="
    "
    str(8)="
    "
    str(9)="
    "
    aa=Request.form("source")
    hh=formatnumber(aa,2,-1)
    aa=replace(hh,".","")
    aa=replace(aa,",","")
    for i=1 to len(aa)
        s=mid(aa,i,1)
      mynum=str(s)
      select case(len(aa)+1-i)
        case 1: k= mynum"
    "
        case 2: k= mynum"
    "
        case 3: k= mynum"
    "
        case 4: k= mynum"
    "
        case 5: k= mynum"
    "
        case 6: k= mynum"
    "
        case 7: k= mynum"
    "
        case 8: k= mynum"
    "
        case 9: k= mynum"
    "
        case 10: k= mynum"
    "
      end select
        m=mk
    next
    %>

    html>
    head>
    title>
    精彩春风之数字大小写转换/title>
    meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    /head>
    !--
    Elseif(s=".") then
        n=m
        i=i+2
        for j=i to len(aa)
          s=mid(aa,i,1)
            mynum=str(s)
          select case(len(aa)+1-i)
          case 1: p= mynum"
    "
          case 2: p= mynum"
    "
          end select
          m=mp
        next
    -->

    body>
    form method="post"  name="forma">
      input type="text" name="source" value="%=hh%>">
      =
      input type="text" name="result" value="%=m%>" size="40">

    input type="submit" name="Submit" value="
    开始转换" >
    /form>
    /body>/html>

     

    您可能感兴趣的文章:
    • jsp页面调用applet实现人民币的大小写转换
    • 人民币数字转换成大写形式
    • PHP人民币金额数字转中文大写的函数代码
    • JS实现将人民币金额转换为大写的示例代码
    • js实现完美兼容各大浏览器的人民币大小写相互转换
    上一篇:如何正确显示数据库里同时存在的GB码和BIG5码?
    下一篇:怎样给文件加密最安全?
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    如何实现人民币的大写转换? 如何,实现,人民币,的,大写,