效果如图:
代码如下:
namespace WebForm { public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { PrintCalender(2016, 10); } public static void PrintCalender(int year, int month) { formatDate fd = new formatDate(year, month); string calender = @"日 一 二 三 四 五 六 {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0} {0}"; calender = string.Format(calender, fd).TrimEnd(); HttpContext.Current.Response.Write(calender); } } public class formatDate : IFormattable { int num; int max; public formatDate(int year, int month) { DateTime dt = new DateTime(year, month, 1); num = (int)dt.DayOfWeek * -1; max = DateTime.DaysInMonth(year, month); } public string ToString(string format, IFormatProvider formatProvider) { return num++ < 0 || num > max ? " " : num.ToString("00"); } } }