C#簡單輸出日歷的方法
本文實例講述了C#簡單輸出日歷的方法。分享給大家供大家參考。具體如下:
用C#輸出日歷,此功能可用于Ajax方式列出計劃日程相關(guān)的內(nèi)容,由于是C#控制輸出,可以方便加上自己需要的業(yè)務(wù)處理邏輯。
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;//獲取當(dāng)年當(dāng)月1號的星期 //Console.WriteLine("當(dāng)月一號的星期{0}",week1); int lastday = day1.AddMonths(1).AddDays(-1).Day; //獲取當(dāng)月的最后一天 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;//獲取當(dāng)年當(dāng)月1號的星期 int lastday = day1.AddMonths(1).AddDays(-1).Day; //獲取當(dāng)月的最后一天 System.Text.StringBuilder builder = new System.Text.StringBuilder(); builder.Append(string.Format("<table class='calendar_table'><caption><span style='cursor:pointer' class='prevMonth' onclick='javascript:changeMonth(-1)'>上一月</span><span class='currMonth'> {0}年{1}月</span><span style='cursor:pointer' class='nextMonth' onclick='javascript:changeMonth(1)'>下一月</span></caption>", DateTime.Now.AddMonths(index).Year, DateTime.Now.AddMonths(index).Month)); builder.Append("<tr class='calendar_head'>"); builder.Append("<td class='calendar_cell'>日</td>"); builder.Append("<td class='calendar_cell'>一</td>"); builder.Append("<td class='calendar_cell'>二</td>"); builder.Append("<td class='calendar_cell'>三</td>"); builder.Append("<td class='calendar_cell'>四</td>"); builder.Append("<td class='calendar_cell'>五</td>"); builder.Append("<td class='calendar_cell'>六</td>"); builder.Append("</tr>"); string emptyString = "<td class='calendar_cell'> </td>"; if (week1 > 0) { builder.Append("<tr class='calendar_body'>"); 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 class='calendar_cell'>{0}</td>", day)); if ((i + week1) % 7 == 0) { builder.Append("</tr><tr class='calendar_body'>"); } } builder.Append("</tr>"); builder.Append("</table>"); return builder.ToString(); } #endregion
希望本文所述對大家的C#程序設(shè)計有所幫助。
上一篇:C#類的多態(tài)性詳解
欄 目:C#教程
下一篇:C#編程自學(xué)之類和對象
本文標(biāo)題:C#簡單輸出日歷的方法
本文地址:http://mengdiqiu.com.cn/a1/C_jiaocheng/6919.html
您可能感興趣的文章


閱讀排行
本欄相關(guān)
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并
- 01-10關(guān)于ASP網(wǎng)頁無法打開的解決方案
- 01-10WinForm限制窗體不能移到屏幕外的方法
- 01-10WinForm繪制圓角的方法
- 01-10C#實現(xiàn)txt定位指定行完整實例
- 01-10WinForm實現(xiàn)仿視頻 器左下角滾動新
- 01-10C#停止線程的方法
- 01-10C#實現(xiàn)清空回收站的方法
- 01-10C#通過重寫Panel改變邊框顏色與寬度的
- 01-10C#實現(xiàn)讀取注冊表監(jiān)控當(dāng)前操作系統(tǒng)已
隨機(jī)閱讀
- 01-10C#中split用法實例總結(jié)
- 01-10delphi制作wav文件的方法
- 04-02jquery與jsp,用jquery
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文