java如何根据小时和分钟获取日期时间
我在编辑文本中有小时和分钟。(例如10:50)
如何根据上面的编辑文本值10:50获取今天的日期时间(如yyyy-MM-dd HH:MM:ss)
更新: 这对我很有用:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR, selectedHour);
calendar.set(Calendar.MINUTE, selectedMinute);
谢谢大家
# 1 楼答案
你只需要使用这个功能
# 2 楼答案
编辑:看看这篇other stackoverflow post关于为什么人们更喜欢使用Java 8
java.time
类而不是Calendar
或Date
在您的实例中,为了解析形式为“HH:mm”的输入,您可以创建一个
DateTimeFormatter
并使用静态方法LocalTime.parse(inputString, dateTimeFormatter)
来获取一个LocalTime对象例如:
查看Java documentation for DateTimeFormatter以获取关于年、日或其他模式的更多信息
如果希望从“10:50”这样的字符串中同时获取日期和时间,则无法使用
LocalDateTime.parse
方法,因为它无法从“HH:mm”字符串中获取日期。因此,解决这个问题的方法是创建LocalTime.parse
的时间间隔,如上图所示,然后使用静态方法LocalDate.now();
获取当前日期,然后使用静态工厂方法LocalDateTime.of(date, time)
将这两个结果组合成一个LocalDateTime
对象例如: