首页 > 编程 > C# > 正文

C#实现功能强大的中国农历日历操作类

2020-01-24 02:06:21
字体:
来源:转载
供稿:网友

本文实例讲述了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#程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表