看看这个,有点类似
http://www.csdn.net/develop/Read_Article.asp?Id=18311

解决方案 »

  1.   

    http://expert.csdn.net/Expert/topic/1636/1636626.xml?temp=.8246271:)
      

  2.   

    Function UP2(ByVal Mxs As String) As String
            Mxs = String.Format("{0:c}", CSng(Mxs)).Replace("¥", "")
            Mxs = Mxs.Replace(".", "")
            Mxs = Mxs.Replace(",", "")
            Dim Num1() As String = {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"}
            Dim Num2() As String = {"分", "角", "元", "拾", "佰", "仟", "万", "拾", "佰", "仟", "亿", "拾", "佰", "仟", "万", "拾", "佰", "仟"}
            Dim Temp1() As String = {"零拾", "零佰", "零仟", "零零", "零元", "零角", "零分", "零万", "万零", "零亿", "亿零", "亿万"}
            Dim temp2() As String = {"零", "零", "零", "零", "元", "", "", "万", "万", "亿", "亿", "亿"}
            If Trim(Mxs) = "" Then
                Return "零元"
            End If
            Dim i As Integer
            Dim strTemp As String = ""
            For i = 0 To Mxs.Length - 1
                If i > 17 Then
                    Return "不可能,你输入的金额太大!"
                End If
                Dim c As Char = Mxs.Chars(Mxs.Length - 1 - i)
                If c <> "." Then
                    strTemp = strTemp.Insert(0, Num2(i))
                    strTemp = strTemp.Insert(0, Num1(CInt(c.ToString)))
                End If        Next
            Dim j As Integer
            For i = 0 To CInt(Mxs.Length / 2)
                For j = 0 To 9
                    strTemp = strTemp.Replace(Temp1(j), temp2(j))
                Next
            Next
            Return strTemp
        End Function