# 保留两位小数
def number_to_capital_zh(strno=nil)
cCha = [['零元','零拾','零佰','零仟','零万','零亿','亿万','零零零','零零','零万','零亿','亿万','零元'], [ '元','零','零','零','万','亿','亿','零','零','万','亿','亿','元']]
strno = strno.to_s.split(".")
return "零元" if strno.blank?
if strno.size > 1
result = (change_unit(strno.first.split("").reverse,"first").reverse + change_unit(strno.last.to_f.round(2).split(""),"last")).join("")
else
result = (change_unit(strno.first.split("").reverse,"first").reverse).join("") +"整"
end
for m in 0..12
result_number = result.gsub!(cCha[0][m], cCha[1][m])
end
return result_number
end
def change_unit(aske_no,unit)
unit = %w(角 分) if unit == "last"
unit = %w(元 拾 佰 仟 万 拾 佰 仟 亿 拾 佰 仟 万 拾 佰 仟) if unit == "first"
number = {"0"=>"零","1"=>"壹","2"=>"贰","3"=>"叁","4"=>"肆","5"=>"伍","6"=>"陆","7"=>"柒","8"=>"捌","9"=>"玖"}
result = []
aske_no.each_with_index do |no,index|
result << number[no] + unit[index]
end
result
end
test:
number_to_capital_zh(324324.234343)
=> "叁拾贰万肆仟叁佰贰拾肆元贰角叁分"
number_to_capital_zh(32432443242343)
=> "叁拾贰万肆仟叁佰贰拾肆亿肆仟叁佰贰拾肆万贰仟叁佰肆拾叁元整"
number_to_capital_zh(111000100100)
=> "壹仟壹佰壹拾亿零壹拾万零壹佰元整"
number_to_capital_zh(11100010000)
=> "壹佰壹拾壹亿零壹万元整"
number_to_capital_zh(1110000000)
=> "壹拾壹亿壹仟万元整"
number_to_capital_zh(1010000000)
=> "壹拾亿壹仟万元整"
分享到:
相关推荐
易语言数字转换汉字大写源码,数字转换汉字大写
易语言源码数字转换汉字大写.rar 易语言源码数字转换汉字大写.rar 易语言源码数字转换汉字大写.rar 易语言源码数字转换汉字大写.rar 易语言源码数字转换汉字大写.rar 易语言源码数字转换汉字大写.rar易语言源码...
js实现将阿拉伯数字转换为中文大写数字。 js实现将阿拉伯数字转换为中文大写数字。
excel 纯函数 数字转换大写 数字转换财务大写 数字转换中文 数字转换汉字,里面有详细的介绍,非常适合初学者,操作简单方便,易学易用,希望能给您带来帮助。 适合excel2000及以上版本。
MySQL函数 数字转中文 非金额 处理数据类型 decimal(21,6)
人民币数字转换成汉字大写 android Java 运行效率
mysql 函数,可以将数字转换为中文大写形式。大写数字是中国特有的数字书写方式,利用与数字同音的汉字取代数字,以防止数目被涂改。 据考证,大写数字最早是由武则天发明,后经朱元璋改进完善。
Android中数字转中文,金额转大写源码,支持口语化转换。
JS将数字转换为大写汉字人民币
16位以内阿拉伯数字转中文大写VB源代码 自己写的代码,欢迎提意见,多多交流
可将任意阿拉伯数字金额等转换成汉字大写“壹、贰”
1、该dll能将阿拉伯数字转换为汉字数字或者中文大写金额。例如1234567.07可转换为: “一百二十三万四千五百六十七点零七”或“壹佰贰拾叁万肆仟伍佰陆拾柒圆零柒分”。 目前支持正负千亿以内(整数部分不超过12位)...
将阿拉伯数字转换为大写数字,主要解决小数点问题,
水晶报表数字金额转中文大写,用于水晶报表中将数字金额转换为中文大写的金额
将数字金额转化为汉字大写金额,用于理财程序的金额转化。
前台页面,通过js转化成中文大写,阿拉伯数字转成中文大写
pb 小写数字转换成大写数字,支持到千万亿.
财务数字转中文大写 输入一亿亿以内的数字,最多两位小数,转换为中文大写
sqlserver数字转金额大写,输入数字返回汉字大写
数字转中文大写