本帖最后由 李荣壮 于 2011-11-2 01:35 编辑
用枚举 写了一下,感觉这样代码少些,看着清楚些,就是不知道效率高不高,谁知道,请指正一下 ,不胜感激。
- enum EnumOfCHS { 零, 一, 二, 三, 四, 五, 六, 七, 八, 九 } // 定义枚举:十个数字的汉字
- // 传入数字日期,返回中文日期
- public static string ToCHSDate(string date)
- {
- string chineseDate = string.Empty; //返回的中文日期( 局部变量必须初始化)
-
- for (int i = 0; i < date.Length; i++) //遍历数字日期,判断是否为数字,并转换为中文表示
- {
- if (Char.IsDigit(date[i])) //判断数字日期中的数字
- {
- int value = Convert.ToInt32(date[i].ToString()); //把字符转换为数字,以便获取枚举中的常量
- chineseDate += Enum.GetName(typeof(EnumOfCHS), value);//将数字转换为中文,并加入到中文日期中。
- }
- else
- {
- chineseDate += date[i].ToString(); //如果不是数字,直接加入到中文日期中
- }
- }
- return chineseDate; //返回中文日期
- }
- }
复制代码
- static void Main(string[] args)
- {
- string date = "2011年11月01日";
- Console.WriteLine(ToCHSDate(date));
- }
复制代码 |