当前位置: 首页 > 编程笔记 >

C# 获取某个时间的0点0分和23点59分59秒

柴兴修
2023-03-14
本文向大家介绍C# 获取某个时间的0点0分和23点59分59秒,包括了C# 获取某个时间的0点0分和23点59分59秒的使用技巧和注意事项,需要的朋友参考一下

C# 获取某个时间的0点0分和23点59分59秒,具体代码如下所示:

C#获取当月第一天和最后一天
当月第一天0时0分0秒:

DateTime.Now.AddDays(1 - DateTime.Now.Day).Date

当月最后一天23时59分59秒:

DateTime.Now.AddDays(1 - DateTime.Now.Day).Date.AddMonths(1).AddSeconds(-1)

C#获取上个月第一天和最后一天
上个月第一天0时0分0秒:

DateTime.Now.AddMonths(-1).Date.AddDays(1 - DateTime.Now.Day);

上个月最后一天23时59分59秒:
DateTime.Parse(DateTime.Now.AddDays(1 - DateTime.Now.Day).ToShortDateString()).AddSeconds(-1).ToString();

当天0时0分0秒:
DateTime start = Convert.ToDateTime(DateTime.Now.ToString("D").ToString());
当天23时59分59秒:
DateTime end = Convert.ToDateTime(DateTime.Now.AddDays(1).ToString("D").ToString()).AddSeconds(-1);

知识点扩展:java 获取某一日期的0点0分0秒和23点59分59秒

public String DateToStringBeginOrEnd(Date date,Boolean flag) {
 String time = null;
 SimpleDateFormat dateformat1 = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
 Calendar calendar1 = Calendar.getInstance();
 //获取某一天的0点0分0秒 或者 23点59分59秒
 if (flag == true) {
  calendar1.setTime(date);
  calendar1.set(calendar1.get(Calendar.YEAR), calendar1.get(Calendar.MONTH), calendar1.get(Calendar.DAY_OF_MONTH),
   0, 0, 0);
  Date beginOfDate = calendar1.getTime();
  time = dateformat1.format(beginOfDate);
  System.out.println(time);
 }else{
  Calendar calendar2 = Calendar.getInstance();
  calendar2.setTime(date);
  calendar1.set(calendar2.get(Calendar.YEAR), calendar2.get(Calendar.MONTH), calendar2.get(Calendar.DAY_OF_MONTH),
   23, 59, 59);
  Date endOfDate = calendar1.getTime();
  time = dateformat1.format(endOfDate);
  System.out.println(time);
 }
 return time;}

总结

以上所述是小编给大家介绍的C# 获取某个时间的0点0分和23点59分59秒,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

 类似资料:
  • 在bash脚本中,我有1个这样的脚本: 我希望我的输出是p1=1/59=0.016949153,但实际上,输出是p1=0 那么,如何解决它。请帮帮我

  • 问题内容: 事实证明,计算结果为,尽管和是 不同的 实体。那么,您如何与? 有一个hack: 我可以做得更好吗? 问题答案: 在ECMAScript6中,除了区分正零和负零并计算为之外,其行为类似于。 Chrome 24支持。

  • 问题内容: 我在使用以下方法时遇到了问题: 这是因为该时间的@EndDate = 00:00:00.000,它没有获取当天的所有值。 如何将@EndDate(始终为00:00:00.000)转换为始终为Date + 23:59:59.999? 问题答案: 避免需要添加EndDate + 23:59:59.999的一种选择是不使用比较,而是使用

  • 问题内容: 我本人已经遇到了限制,但是尽管在线上有很多闲聊,但我从未见过关于TIME数据类型的上限和下限 为何 如此的解释。http://dev.mysql.com/doc/refman/5.7/en/time.html上的官方参考资料说 TIME值的范围可能是’-838:59:59’到‘838:59:59’。小时部分可能是如此之大,因为“时间”类型不仅可以用来表示一天中的某个时间(必须少于24小

  • 下午好. 抱歉我把你弄糊涂了。如果有任何问题请告诉我。有人帮忙吗? 谢谢。 维斯瓦 --1小时:30分钟--所以从1:00到1:59:59的任何值都是第二个实例值,且时区为MST。

  • 问题内容: 标题可能有些混乱,所以请允许我解释一下。我正在使用一张桌子记录我的工作日志。每天我都会创建一个条目,说明从什么时间到什么时间工作,并添加一条注释来描述我的工作。 然后,我使用查询来比较时间戳,以准确计算出当天我工作了多少小时和几分钟。此外,我使用查询来计算我全年工作的小时数和分钟数的总和。那就是我遇到问题的地方。我的查询如下。 默认情况下,MySQL TIME字段允许的时间范围为’-8