1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 namespace ConsoleApplication1 6 { 7 class Program 8 { 9 10 static void Main(string[] args)11 {12 Console.WriteLine("请输入一个日期:");13 string strDate = Console.ReadLine();14 string dc = Baodate2Chinese(strDate);15 Console.WriteLine(dc);16 }17 18 private static string Baodate2Chinese(string strDate)19 {20 char[] strChinese= new char[] {21 '〇','一','二','三','四','五','六','七','八','九','十'22 };23 StringBuilder result = new StringBuilder();24 25 //// 依据正则表达式判断参数是否正确26 //Regex theReg = new Regex(@"(d{2}|d{4})(/|-)(d{1,2})(/|-)(d{1,2})");27 28 if (!string.IsNullOrEmpty(strDate))29 {30 // 将数字日期的年月日存到字符数组str中31 string[] str = null;32 if (strDate.Contains("-"))33 {34 str = strDate.Split('-');35 }36 else if (strDate.Contains("/"))37 {38 str = strDate.Split('/');39 }40 // str[0]中为年,将其各个字符转换为相应的汉字41 for (int i = 0; i < str[0].Length; i++)42 {43 result.Append(strChinese[int.Parse(str[0][i].ToString())]);44 }45 result.Append("年");46 47 // 转换月48 int month = int.Parse(str[1]);49 int MN1 = month / 10;50 int MN2 = month % 10;51 52 if (MN1 > 1)53 {54 result.Append(strChinese[MN1]);55 }56 if (MN1 > 0)57 {58 result.Append(strChinese[10]);59 }60 if (MN2 != 0)61 {62 result.Append(strChinese[MN2]);63 }64 result.Append("月");65 66 // 转换日67 int day = int.Parse(str[2]);68 int DN1 = day / 10;69 int DN2 = day % 10;70 71 if (DN1 > 1)72 {73 result.Append(strChinese[DN1]);74 }75 if (DN1 > 0)76 {77 result.Append(strChinese[10]);78 }79 if (DN2 != 0)80 {81 result.Append(strChinese[DN2]);82 }83 result.Append("日");84 }85 else86 {87 throw new ArgumentException();88 }89 90 return result.ToString();91 }92 }93 }
View Code
原标题:C#数字日期装换为中文日期
关键词:C#