汉字数字大小写转换 汉字大小写转换工具

private static String[] CH = { "", "", "拾", "佰", "仟", "万", "","", "", "亿", "", "", "", "兆" }; private static String[] CHS_NUMBER = { "零", "壹","贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };
public static String getCHSNumber(Stringmoney) { String chs= ""; Stringtmp_int = money.Substring(0, money.IndexOf(".")); Stringtmp_down = money.Substring(money.IndexOf(".")+1); char[]tmp_int_char = tmp_int.ToCharArray(); String[]tmp_chs = new String[tmp_int_char.Length]; int tab =0; for (int i= 0; i < tmp_int_char.Length; i++) { tab = tmp_int_char.Length - i- 1; if (tmp_int_char.Length <=5) { tmp_chs[tab] =CHS_NUMBER[(int)float.Parse(tmp_int_char[i] + ".0")]; if (!tmp_chs[tab].Equals("零")) { //tmp_int_char.Length - i 为数字所在的位数 chs = chs+ tmp_chs[tab] + CH[tmp_int_char.Length - i]; } else { //当数字中有零时就在后加上零,如果超过1个以上的零也只加一个零 if(!chs.EndsWith("零") && tab != 0) { chs = chs +tmp_chs[tab]; } else if(chs.EndsWith("零") && tab == 0) { chs = chs.Substring(0,chs.Length - 1); } } } // 如果数字的位数大于5和小于9时 if (tmp_int_char.Length >5 && tmp_int_char.Length < 9) { tmp_chs[tab] =CHS_NUMBER[(int)float.Parse(tmp_int_char[i] + ".0")]; // 如:123,1234分成两部分 // 第1部分123:万以上亿以下 if (tab >= 4) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 3]; // 当第1部分算完时在加上"万" if (tab == 4) { chs = chs + "万"; } } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; } // 当第1部分算完时 if (tab == 4) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); chs = chs+ "万"; } else { // 如果没有零就直接加上"万" chs = chs+ "万"; } } } } // 如:123,1234分成两部分 // 第1部分1234:万以下 if (tab < 4) { if(!tmp_chs[tab].Equals("零")) { // tmp_int_char.Length - i为数字所在的位数 chs = chs + tmp_chs[tab] +CH[tmp_int_char.Length - i]; } else { //当数字中有零时就在后加上零,如果超过1个以上的零也只加一个零 if (!chs.EndsWith("零")&& tab != 0) { chs = chs + tmp_chs[tab]; } if (chs.EndsWith("零")&& tab == 0) { chs = chs.Substring(0, chs.Length - 1); } } } } // 如果数字的位数大于5和小于9时 if (tmp_int_char.Length >=9 && tmp_int_char.Length <= 12) { tmp_chs[tab] =CHS_NUMBER[(int)float.Parse(tmp_int_char[i] + ".0")]; if (tab >= 8 && tab < 12) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 7]; // 当第1部分算完时在加上"万" if (tab == 8) { chs = chs + "亿";
} } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; } //当第1部分算完时 if (tab == 8) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); chs = chs+ "亿"; } else { // 如果没有零就直接加上"万" chs = chs+ "亿"; } } } } // 如:123,1234分成两部分 // 第1部分123:万以上亿以下 if (tab >= 4 && tab < 8) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 3]; // 当第1部分算完时在加上"万" if (tab == 4) { chs = chs + "万"; } } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; } //当第1部分算完时 if (tab == 4) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); if(!chs.EndsWith("亿")) chs = chs + "万"; } else { // 如果没有零就直接加上"万" if(!chs.EndsWith("亿")) chs = chs + "万"; } } } } // 如:123,1234分成两部分 // 第1部分1234:万以下 if (tab < 4) { if(!tmp_chs[tab].Equals("零")) { // tmp_int_char.Length - i为数字所在的位数 chs = chs + tmp_chs[tab] +CH[tmp_int_char.Length - i]; } else { //当数字中有零时就在后加上零,如果超过1个以上的零也只加一个零 if (!chs.EndsWith("零")&& tab != 0) { chs = chs + tmp_chs[tab]; } if (chs.EndsWith("零")&& tab == 0) { chs = chs.Substring(0, chs.Length - 1); } } } } // 如果数字的位数大于12和小于16时 if (tmp_int_char.Length >12 && tmp_int_char.Length <= 16) { tmp_chs[tab] =CHS_NUMBER[(int)float.Parse(tmp_int_char[i] + ".0")]; if (tab >= 12 && tab < 16) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 11]; // 当第1部分算完时在加上"万" if (tab == 12) { chs = chs + "兆"; } } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; } //当第1部分算完时 if (tab == 12) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); chs = chs+ "兆"; } else { // 如果没有零就直接加上"万" chs = chs+ "兆"; } } } } if (tab >= 8 && tab < 12) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 7]; // 当第1部分算完时在加上"万" if (tab == 8) { chs = chs + "亿"; } } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; } //当第1部分算完时 if (tab == 8) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); if(!chs.EndsWith("兆")) chs = chs + "亿"; } else { // 如果没有零就直接加上"万" if(!chs.EndsWith("兆")) chs = chs + "亿"; } } } } // 如:123,1234分成两部分 // 第1部分123:万以上亿以下 if (tab >= 4 && tab < 8) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 3]; // 当第1部分算完时在加上"万" if (tab == 4) { chs = chs + "万"; } } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; } //当第1部分算完时 if (tab == 4) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); if(!chs.EndsWith("亿")) if (!chs.EndsWith("兆")) if (!chs.EndsWith("兆")) chs = chs+ "万"; } else { // 如果没有零就直接加上"万" if(!chs.EndsWith("亿")) if (!chs.EndsWith("兆")) chs = chs + "万"; } }
} } // 如:123,1234分成两部分 // 第1部分1234:万以下 if (tab < 4) { if(!tmp_chs[tab].Equals("零")) { // tmp_int_char.Length - i为数字所在的位数 chs = chs + tmp_chs[tab] +CH[tmp_int_char.Length - i]; } else { //当数字中有零时就在后加上零,如果超过1个以上的零也只加一个零 if (!chs.EndsWith("零")&& tab != 0) { chs = chs + tmp_chs[tab]; }
汉字数字大小写转换 汉字大小写转换工具
if (chs.EndsWith("零")&& tab == 0) { chs = chs.Substring(0, chs.Length - 1); } } } } // 如果数字的位数大于16 if (tmp_int_char.Length >16) { tmp_chs[tab] =CHS_NUMBER[(int)float.Parse(tmp_int_char[i] + ".0")]; if (tab >= 12) { chs = chs+ tmp_chs[tab]; // 当第1部分算完时在加上"万" if (tab ==12) { chs = chs + "兆"; } } if (tab >= 8 && tab < 12) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 7]; // 当第1部分算完时在加上"万" if (tab == 8) { chs = chs + "亿"; } } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; } //当第1部分算完时 if (tab == 8) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); if(!chs.EndsWith("兆")) chs = chs + "亿"; } else { // 如果没有零就直接加上"万" if(!chs.EndsWith("兆")) chs = chs + "亿"; } } } } // 如:123,1234分成两部分 // 第1部分123:万以上亿以下 if (tab >= 4 && tab < 8) { //当前数字不是大小零时 if(!tmp_chs[tab].Equals("零")) { chs = chs + tmp_chs[tab] +CH[tab - 3]; // 当第1部分算完时在加上"万" if (tab == 4) { chs = chs + "万"; } } else { //当前数字为大小"零"时 //判断前一次形成在字符串结尾有没有零 // 如果没有零就加上零 if (!chs.EndsWith("零")) { chs = chs + tmp_chs[tab]; }
//当第1部分算完时 if (tab == 4) { //  先判断字符串有没有零 //  如果有零时就把零去掉再加上"万" if (chs.EndsWith("零")) { chs =chs.Substring(0, chs.Length - 1); if(!chs.EndsWith("兆")) if (!chs.EndsWith("亿")) chs = chs + "万"; } else { // 如果没有零就直接加上"万" if(!chs.EndsWith("兆")) if (!chs.EndsWith("亿")) chs = chs + "万"; } } } }
// 如:123,1234分成两部分 // 第1部分1234:万以下 if (tab < 4) { if(!tmp_chs[tab].Equals("零")) { // tmp_int_char.Length - i为数字所在的位数 chs = chs + tmp_chs[tab] +CH[tmp_int_char.Length - i]; } else {//当数字中有零时就在后加上零,如果超过1个以上的零也只加一个零 if (!chs.EndsWith("零")&& tab != 0) { chs = chs + tmp_chs[tab]; } if (chs.EndsWith("零")&& tab == 0) { chs = chs.Substring(0, chs.Length - 1); } } } } }
if(tmp_down != null) { char[] tmp =tmp_down.ToCharArray(); if (tmp.Length == 1) { if (tmp[0] != '0') chs = chs+ "元" + CHS_NUMBER[(int)float.Parse(tmp[0] + ".0")] + "角整"; else chs = chs+ "元整"; } else { if (tmp[1] != '0' && tmp[0] !='0') { chs = chs+ "元" + CHS_NUMBER[(int)float.Parse(tmp[0] + ".0")] + "角" +CHS_NUMBER[(int)float.Parse(tmp[1] + ".0")] + "分"; } else if (tmp[1] != '0' && tmp[0] =='0') { chs = chs+ "元零" + CHS_NUMBER[(int)float.Parse(tmp[1] + ".0")] + "分"; } } } else { chs = chs + "元整"; } returnchs; }

  

爱华网本文地址 » http://www.413yy.cn/a/25101010/39162.html

更多阅读

实用工具:多字体在线转换工具

素材来源/网络 编辑制作/荷花小女子在线制作、查询工具总汇各种字体在线制作总汇输入名字,会为你写对联把文字变成声音的软件艺术字体在线生成

在线繁体字转换工具 网名转换器在线转换

输入简体字,点下面繁体字按钮进行在线转换【转】我不欠你的-----这个故事觉得很有意义,转给大家看看。有个美国小孩问他爸爸"我们很有钱吗?"爸爸回答他 "我有钱,你没有。"所以对孩子,要说人话。去年暑假,一个中国朋友把自己13岁的儿子送

mp4转换器下载 qsv奇艺qsv转换工具

mp4转换器下载[都是精心整理出来的!一定有你想要的!]软件分类:视频转换运行环境:Win9X/Win2000/WinXP/Win2003/软件语言:简体中文授权方式:免费软件软件大小:22528KB下载地址 →快乐影音转换器(MP4格式转换器)v2.0绿色版【万能视频格

声明:《汉字数字大小写转换 汉字大小写转换工具》为网友傻傻傻男人分享!如侵犯到您的合法权益请联系我们删除