C#简单输出日历的方法_C#教程-查字典教程网
C#简单输出日历的方法
C#简单输出日历的方法
发布时间:2016-12-28 来源:查字典编辑
摘要:本文实例讲述了C#简单输出日历的方法。分享给大家供大家参考。具体如下:用C#输出日历,此功能可用于Ajax方式列出计划日程相关的内容,由于是...

本文实例讲述了C#简单输出日历的方法。分享给大家供大家参考。具体如下:

用C#输出日历,此功能可用于Ajax方式列出计划日程相关的内容,由于是C#控制输出,可以方便加上自己需要的业务处理逻辑。

1.控制台输出:

using System; namespace 控制台日历 { class Program { public static void Main(string[] args) { string s = " "; Console.WriteLine("输入年份:"); int nYear = int.Parse(Console.ReadLine()); Console.WriteLine("输入月份:"); int nMonth = int.Parse(Console.ReadLine()); DateTime day1 = new DateTime(nYear,nMonth,1); Console.WriteLine("{0}/{1}",day1.Year,day1.Month); Console.WriteLine("日 一 二 三 四 五 六"); int week1 =(int )day1.DayOfWeek;//获取当年当月1号的星期 //Console.WriteLine("当月一号的星期{0}",week1); int lastday = day1.AddMonths(1).AddDays(-1).Day; //获取当月的最后一天 for (int i = 0; i < week1; i++) Console.Write(s);//不能换行输出 for (int i = 1; i <= lastday; i++) { Console.Write("{0:00} ", i);//按01 02 输出 if ((i + week1) % 7 == 0) Console.WriteLine(); } Console.WriteLine(); Console.Write("Press any key to continue . . . "); Console.ReadKey(true); } } }

效果图:

2.Html表格输出:

#region 生成表格日历 /// <summary> /// 生成表格日历 index:月份偏量,用来查看上一月下一月 /// </summary> /// <param name="index"></param> /// <returns></returns> public static string GetCalendarHtml(int index = 0) { DateTime day1 = new DateTime(DateTime.Now.AddMonths(index).Year, DateTime.Now.AddMonths(index).Month, 1); int week1 = (int)day1.DayOfWeek;//获取当年当月1号的星期 int lastday = day1.AddMonths(1).AddDays(-1).Day; //获取当月的最后一天 System.Text.StringBuilder builder = new System.Text.StringBuilder(); builder.Append(string.Format("<table><caption><span onclick='javascript:changeMonth(-1)'>上一月</span><span> {0}年{1}月</span><span onclick='javascript:changeMonth(1)'>下一月</span></caption>", DateTime.Now.AddMonths(index).Year, DateTime.Now.AddMonths(index).Month)); builder.Append("<tr>"); builder.Append("<td>日</td>"); builder.Append("<td>一</td>"); builder.Append("<td>二</td>"); builder.Append("<td>三</td>"); builder.Append("<td>四</td>"); builder.Append("<td>五</td>"); builder.Append("<td>六</td>"); builder.Append("</tr>"); string emptyString = "<td> </td>"; if (week1 > 0) { builder.Append("<tr>"); for (int i = 0; i < week1; i++) { builder.Append(emptyString); } } for (int i = 1; i <= lastday; i++) { string day = string.Format("{0:00} ", i);//按01 02 输出 builder.Append(string.Format("<td>{0}</td>", day)); if ((i + week1) % 7 == 0) { builder.Append("</tr><tr>"); } } builder.Append("</tr>"); builder.Append("</table>"); return builder.ToString(); } #endregion

希望本文所述对大家的C#程序设计有所帮助。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C#教程学习
    热门C#教程学习
    编程开发子分类