コード例 #1
0
        public static LFrameWork.Base.CNDate.CNDate getChinaDate(DateTime dt)
        {
            LFrameWork.Base.CNDate.CNDate cnDate = new LFrameWork.Base.CNDate.CNDate();
            int year  = dt.Year;
            int month = dt.Month;
            int day   = dt.Day;

            long[] numArray1 = ChinaDate.calElement(year, month, day);
            cnDate.cnIntYear  = (int)numArray1[0];
            cnDate.cnIntMonth = (int)numArray1[1];
            cnDate.cnIntDay   = (int)numArray1[2];
            cnDate.cnStrYear  = ChinaDate.cyclical(year);
            cnDate.cnAnm      = ChinaDate.AnimalsYear(year);
            cnDate.cnStrMonth = ChinaDate.nStr1[(int)numArray1[1]] + "月";
            cnDate.cnStrDay   = ChinaDate.getChinaDate((int)numArray1[2]);
            string str1 = dt.ToString("MMdd");
            string str2 = ChinaDate.FormatDate(cnDate.cnIntMonth, cnDate.cnIntDay);

            for (int n = 0; n < ChinaDate.solarTerm.Length; ++n)
            {
                if (ChinaDate.sTerm(dt.Year, n).ToString("MMdd").Equals(dt.ToString("MMdd")))
                {
                    cnDate.cnSolarTerm = ChinaDate.solarTerm[n];
                    break;
                }
            }
            foreach (string str3 in ChinaDate.sFtv)
            {
                if (str3.Substring(0, 4).Equals(str1))
                {
                    cnDate.cnFtvs = str3.Substring(4, str3.Length - 4);
                    break;
                }
            }
            foreach (string str3 in ChinaDate.lFtv)
            {
                if (str3.Substring(0, 4).Equals(str2))
                {
                    cnDate.cnFtvl = str3.Substring(4, str3.Length - 4);
                    break;
                }
            }
            dt = dt.AddDays(1.0);
            long[] numArray2 = ChinaDate.calElement(dt.Year, dt.Month, dt.Day);
            if (ChinaDate.FormatDate((int)numArray2[1], (int)numArray2[2]).Equals("0101"))
            {
                cnDate.cnFtvl = "除夕";
            }
            return(cnDate);
        }