function ui_lobby:numberToStrin(szNum) local zhChar = {"壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"} local places = {"", "拾", "佰", "仟", "万", "拾", "佰", "仟", "亿", "拾", "佰", "仟"} if nil == tonumber(szNum) then return '' end if tonumber(szNum)<0 then return '' end local numStr = tostring(szNum) local len = string.len(numStr) local str = '' local has0 = false local count=0 for i = 1, len do local n = tonumber(string.sub(numStr,i,i)) local p = len - i + 1 if p<=8 and n==0 and p>=5 then count=count+1 end if n > 0 and has0 == true then --连续多个零只显示一个 str = str .. '零' has0 = false end if p % 4 == 2 and n == 1 then --十位数如果是首位则不显示一十这样的 if len > p then str = str .. zhChar[n] end str = str .. places[p] elseif n > 0 then str = str .. zhChar[n] str = str .. places[p] elseif n == 0 then if p % 4 == 1 then --各位是零则补单位 if count==4 then str = str .. places[1] else str = str .. places[p] end else has0 = true end end end return str end
数字
最新推荐文章于 2024-03-08 18:31:57 发布