如何数字转换为中文大写
现有一串阿拉伯数字123456,请设计一个实现方案将其转换为中文大写。例如转换后最终结果为十二万三千四百五十六。
------解决方案--------------------在精华区里找找,有
------解决方案--------------------参见:http://www.cnblogs.com/jembai/articles/1266207.html
------解决方案--------------------http://www.cnblogs.com/datacool/archive/2011/11/07/ExternClassUsing.html
------解决方案--------------------相当罗嗦。做成一个DLL卖钱吧。哈哈。
------解决方案--------------------你找出来了。
------解决方案--------------------还不如建个字库,一一对应,根据阿拉伯数字得出对应中文
------解决方案--------------------
------解决方案--------------------   static void Main(string[] args)
       {
           Dictionary<char, string> cc = new Dictionary<char, string>();
           cc.Add('0', "零");
           cc.Add('1', "一");
           cc.Add('2', "二");
           cc.Add('3', "三");
           cc.Add('4', "四");
           cc.Add('5', "五");
           cc.Add('6', "六");
           cc.Add('7', "七");
           cc.Add('8', "八");
           cc.Add('9', "九");
           string bb = Console.ReadLine();
          char [] aa = bb.ToCharArray();
           foreach(char aaa in aa){
               Console.WriteLine(cc[aaa]);
           }
           Console.ReadKey();
       }
------解决方案--------------------这是我在精华区里看到的,不是本人写的,但应该可以用
希望可以对楼主有用,实在不行,你到精华区里找找
为了方便,我就给贴出来了
// 数字转换成大写金额
// 例如:(new Money(200)).ToString() == "贰佰元"
namespace Skyiv.Util
{
 using System.Text;
 class Test
 {
   static void Main()
   {
     for (;;)
     {
       System.Console.Write("金额: ");
       string  s = System.Console.ReadLine();
       decimal m;
       try   { m = decimal.Parse(s); }
       catch { break; }
       System.Console.WriteLine("大写: " + new Money(m));
     }
   }
 }
 // 该类重载的 ToString() 方法返回的是大写金额字符串
 class Money
 {
   public string Yuan  = "元";                        // “元”,可以改为“圆”、“卢布”之类
   public string Jiao  = "角";                        // “角”,可以改为“拾”
   public string Fen   = "分";                        // “分”,可以改为“美分”之类
   static string Digit = "零壹贰叁肆伍陆柒捌玖";      // 大写数字
   bool   isAllZero    = true;                        // 片段内是否全零
   bool   isPreZero    = true;                        // 低一位数字是否是零
   bool   Overflow     = false;                       // 溢出标志
   long   money100;                                   // 金额*100,即以“分”为单位的金额
   long   value;                                      // money100的绝对值
   StringBuilder sb    = new StringBuilder();         // 大写金额字符串,逆序
   // 只读属性: "零元"
   public string ZeroString
   {
     get { return Digit[0] + Yuan; }
   }
   // 构造函数
   public Money(decimal money)
   {
     try   { money100 = (long)(money * 100m); }
     catch { Overflow = true; }
     if (money100 == long.MinValue) Overflow = true;
   }
   // 重载 ToString() 方法,返回大写金额字符串
   public override string ToString()
   {
     if (Overflow) return "金额超出范围";
     if (money100 == 0) return ZeroString;