本文實例講述了C#實現功能強大的中國農歷日歷操作類。分享給大家供大家參考。具體如下:
這個C#類定義了中國農歷日歷,除了可以輸入正常的日歷外還可以獲得指定年份的生肖、返回年份的干支以及星座、二十四節氣、二十八星宿、常用節日等。
部分代碼片段如下
/// <summary>/// 傳回農歷y年閏月的天數/// </summary>private static int leapDays(int y){ if (leapMonth(y) != 0) { if ((lunarInfo[y - 1900] & 0x10000) != 0) return 30; else return 29; } else return 0;}/// <summary>/// 傳回農歷y年閏哪個月 1-12 , 沒閏傳回 0/// </summary>private static int leapMonth(int y){ return (int)(lunarInfo[y - 1900] & 0xf);}/// <summary>/// 傳回農歷y年m月的總天數/// </summary>private static int monthDays(int y, int m){ if ((lunarInfo[y - 1900] & (0x10000 >> m)) == 0) return 29; else return 30;}/// <summary>/// 傳回農歷y年的生肖/// </summary>private static String AnimalsYear(int y){ return Animals[(y - 4) % 12];}/// <summary>/// 傳入月日的offset 傳回干支,0=甲子/// </summary>private static String cyclicalm(int num){ return (Gan[num % 10] + Zhi[num % 12]);}/// <summary>/// 傳入offset 傳回干支, 0=甲子/// </summary>private static String cyclical(int y){ int num = y - 1900 + 36; return (cyclicalm(num));}
完整實例代碼點擊此處本站下載。
希望本文所述對大家的C#程序設計有所幫助。
新聞熱點
疑難解答