Exemplo n.º 1
0
        public static bool 是否在课程节数内(CourseTimeFormate CourseTime, DateTime SetTime)
        {
            float 当前节 = TimeTools.计算当前节(SetTime);

            foreach (int 节 in CourseTime.节)
            {
                if (当前节 >= 节 && 当前节 <= 节 + 1)
                {
                    return(true);
                }
            }
            return(false);
        }
Exemplo n.º 2
0
        public static CourseTimeFormate Parse(string OldTimeFormate)
        {
            CourseTimeFormate temp = new CourseTimeFormate();

            #region 转化星期
            switch (OldTimeFormate.Substring(1, 1))
            {
            case "一": temp.星期 = DayOfWeek.Monday; break;

            case "二": temp.星期 = DayOfWeek.Tuesday; break;

            case "三": temp.星期 = DayOfWeek.Wednesday; break;

            case "四": temp.星期 = DayOfWeek.Thursday; break;

            case "五": temp.星期 = DayOfWeek.Friday; break;

            case "六": temp.星期 = DayOfWeek.Saturday; break;

            case "日": temp.星期 = DayOfWeek.Sunday; break;
            }
            #endregion
            #region 转化周
            //截取周数信息
            var 周数的起始位置 = OldTimeFormate.IndexOf("{") + 1;
            var 周数的结束位置 = OldTimeFormate.IndexOf("}");
            var 周数信息    = OldTimeFormate.Substring(周数的起始位置, 周数的结束位置 - 周数的起始位置);
            var 周数      = Regex.Replace(周数信息, @"[^0-9-]+", "");
            //得到开始和结束
            temp.开始周 = int.Parse(周数.Substring(0, 周数.IndexOf("-") - 0));
            temp.结束周 = int.Parse(周数.Substring(周数.IndexOf("-") + 1, 周数.Length - 周数.IndexOf("-") - 1));
            //得到单双周
            if (OldTimeFormate.Contains("|"))
            {
                temp.单双周 = OldTimeFormate.Substring(OldTimeFormate.IndexOf("|") + 1, 1);
            }
            #endregion
            #region 转化节
            string[] 节数 = OldTimeFormate.Substring(OldTimeFormate.IndexOf("第") + 1, OldTimeFormate.IndexOf("节") - OldTimeFormate.IndexOf("第") - 1).Split(new char[] { ',' });
            foreach (string 节 in 节数)
            {
                temp.节.Add(int.Parse(节));
            }
            #endregion
            return(temp);
        }