您的位置:首页 > 编程语言 > C#

欢迎使用CSDN-markdown编辑器

2016-12-22 00:50 246 查看
using System;

using System.Collections.Generic;

namespace WaiShiBan

{

public class RBM

{

public static string[] ZhongWen = new string[] { “零”,”壹”, “贰”, “叁”, “肆”, “伍”, “陆”, “柒”, “捌”, “玖” };

public static string[] ZWzhengshu = new string[] {“”, “拾”, “佰”, “千” };

public static string[] ZWwan = new string[] { “元”, “万”, “亿”};

public static string Retulstring=”“;

public static string toDaXie(double r)

{

if ((r*100 - Math.Floor(r*100)!=0) || r>999999999999)

{

return “只保留两位小数”;//只要两位小数

}

//文本化

string SR = Math.Floor(r * 100).ToString();

string XiaoShu = SR.Substring(SR.Length - 2, 2);

string ZhengShu = SR.Substring(0, SR.Length - 2);

//取小数

string xiaoshuS = ZhongWen[Convert.ToInt16(XiaoShu.Substring(0,1))] +”角”+ ZhongWen[Convert.ToInt16(XiaoShu.Substring(1, 1))]+”分”;

//4位一取,保证元、万、亿

List ZS = new List();

while (ZhengShu.Length > 4)

{

ZS.Add(ZhengShu.Substring(ZhengShu.Length - 4, 4));

ZhengShu = ZhengShu.Substring(0, ZhengShu.Length - 4);

}

ZS.Add(ZhengShu);

//循环每个4位

for (int a = 0; a < ZS.Count; a++)

{

string Jie = ZS[a];

string S = “”;

//个十百千

for (int i = 0; i < Jie.Length; i++)

{

//找出来,数字化

int ShuZi = Convert.ToInt16(Jie.Substring(Jie.Length - 1 - i, 1));

if (ShuZi != 0)//如果非0,就加一千二百三十四个

{ S = S.Insert(0, (ZhongWen[ShuZi] + ZWzhengshu[i])); }

else//如果0,就加零

{ S = S.Insert(0, “零”); }

}

//多于的0去掉

S = S + “X”;

S = S.Replace(“零零零零”, “零”);

S = S.Replace(“零零零”, “零”);

S = S.Replace(“零零”, “零”);

S = S.Replace(“零X”, “”);

S = S.Replace(“X”, “”);

S = S + ZWwan[a];

Retulstring = Retulstring.Insert(0, S);

}

Retulstring = Retulstring.Replace(“亿万”, “亿”);

return Retulstring + xiaoshuS;

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息