大小写转化()

  1. --文字转换  
  2. function  Bank:numberToString(szNum)  
  3.     local szChMoney = ""  
  4.     local szNum = 0  
  5.     local iLen = 0  
  6.     local iNum = 0  
  7.     local iAddZero = 0  
  8.     local hzUnit = {"""拾""佰""仟""万""拾""佰""仟""亿""拾""佰""仟""万""拾""佰""仟"}  
  9.     local hzNum = {"零""壹""贰""叁""肆""伍""陆""柒""捌""玖"}  
  10.   
  11.   if nil == tonumber(szNum) then  
  12.     return '错误的数字'  
  13.   end  
  14.     
  15.   szNum = '10000001'  
  16.   iLen =string.len(szNum)   
  17.   
  18.    if iLen > 15 or iLen == 0 or tonumber(szNum) < 0 then  
  19.       return "错误的数字"   
  20.     end  
  21.   local i = 0  
  22.   for i = 1, iLen  do   
  23.     iNum = string.sub(szNum,i,i)  
  24.     if iNum == 0 then  
  25.       iAddZero = iAddZero + 1  
  26.     else  
  27.       if iAddZero > 0 then  
  28.         szChMoney = szChMoney..hzNum[1]    
  29.       end  
  30.   
  31.       szChMoney = szChMoney..hzNum[iNum + 1] --//转换为相应的数字  
  32.       iAddZero = 0  
  33.   
  34.     end  
  35.   
  36.     if iNum ~=0 or iLen-i==3 or iLen-i==11 or ((iLen-i+1)%8==0 and iAddZero<4) then  
  37.       szChMoney = szChMoney..hzUnit[iLen-i+1]  
  38.     end  
  39.   
  40.   end  
  41.   
  42.   return szChMoney  
  43.   
  44. end  

猜你喜欢

转载自blog.csdn.net/qq_40708273/article/details/78981757