admin管理员组

文章数量:1026989

DateTime.Parse

DateTime.Parse

最近做了一个功能,大致就是让一些东西在规定的时间段显示,而时间就是读的表格,是这个样子的

那么怎么才能转化成C#可以识别的代码呢,就用到了DateTime类,要引用System命名空间,这里用到了DateTime.Parse() 方法,可以把string类型转换成DateTime类型返回回来.
然后再与当前的系统时间做比较,就可以判断是否在活动时间内了

		List<Activity> activityList = new List<Activity>();var activitys = Gamedata.instance.GetAllActivity().GetEnumerator();	// 得到所有的活动DateTime curSystemTime = UserManager.getServerTime();	// 得到当前的系统时间while (activitys.MoveNext()){var cur = activitys.Current;var endTime = cur.endTime;if (endTime.EndsWith("24:00:00")){endTime = endTime.Substring(0, endTime.Length - 8) + "23:59:59";}DateTime date = DateTime.Parse(endTime);if (curSystemTime > date) continue;date = DateTime.Parse(cur.startTime);if (date > curSystemTime ) continue;activityList.Add(cur);	// 把符合条件的添加到列表中}

ok,这就是一个完整的判断逻辑了,在这里有个特殊的处理不知道大家有没有注意到,那就是判断了下结尾是否是"24:00:00"结尾的,之所以这样判断是因为DateTime.Parse() 是识别不了的,会报下面的错误

Unhandled exception. System.FormatException: The DateTime represented by the string ‘2020-4-5 24:00:00’ is not supported in calendar ‘System.Globalization.GregorianCalendar’

当然了,为什么startTime没有加判断呢,这是因为,就我们策划的尿性开始时间200%会用"00:00:00" 表示而不"24:00:00" .
以上就是关于DateTime.Parse() 的使用了,格式的话注意用24小时制的就好啦.

DateTime.Parse

DateTime.Parse

最近做了一个功能,大致就是让一些东西在规定的时间段显示,而时间就是读的表格,是这个样子的

那么怎么才能转化成C#可以识别的代码呢,就用到了DateTime类,要引用System命名空间,这里用到了DateTime.Parse() 方法,可以把string类型转换成DateTime类型返回回来.
然后再与当前的系统时间做比较,就可以判断是否在活动时间内了

		List<Activity> activityList = new List<Activity>();var activitys = Gamedata.instance.GetAllActivity().GetEnumerator();	// 得到所有的活动DateTime curSystemTime = UserManager.getServerTime();	// 得到当前的系统时间while (activitys.MoveNext()){var cur = activitys.Current;var endTime = cur.endTime;if (endTime.EndsWith("24:00:00")){endTime = endTime.Substring(0, endTime.Length - 8) + "23:59:59";}DateTime date = DateTime.Parse(endTime);if (curSystemTime > date) continue;date = DateTime.Parse(cur.startTime);if (date > curSystemTime ) continue;activityList.Add(cur);	// 把符合条件的添加到列表中}

ok,这就是一个完整的判断逻辑了,在这里有个特殊的处理不知道大家有没有注意到,那就是判断了下结尾是否是"24:00:00"结尾的,之所以这样判断是因为DateTime.Parse() 是识别不了的,会报下面的错误

Unhandled exception. System.FormatException: The DateTime represented by the string ‘2020-4-5 24:00:00’ is not supported in calendar ‘System.Globalization.GregorianCalendar’

当然了,为什么startTime没有加判断呢,这是因为,就我们策划的尿性开始时间200%会用"00:00:00" 表示而不"24:00:00" .
以上就是关于DateTime.Parse() 的使用了,格式的话注意用24小时制的就好啦.

本文标签: DateTimeParse