在Java中,我有一个Date对象存储为Java的Date类型。
我也有一个公历创建日期。公历日期没有参数,因此是今天日期(和时间?)的一个实例。
使用java date,我希望能够从java date类型中获取年、月、日、小时、分钟和秒,并比较gregoriancalendar日期。
我看到,目前Java日期存储为long,而惟一可用的方法似乎只是将long写为格式化的日期字符串。有没有办法访问年、月、日等?
我看到Date
类的getYear()
、getMonth()
等方法已被弃用。我想知道将Java date实例与GregorianCalendar
Date一起使用的最佳实践是什么。
我的最终目标是进行日期计算,这样我就可以检查Java日期与今天的日期和时间是否在这么多小时、分钟等范围内。
我仍然是Java的新手,对此感到有点困惑。
发布于 2015-09-03 05:10:54
发布于 2012-02-28 07:48:11
你可以这样做,它将解释Date
类是如何工作的。
String currentDateString = "02/27/2012 17:00:00";
SimpleDateFormat sd = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
Date currentDate = sd.parse(currentDateString);
String yourDateString = "02/28/2012 15:00:00";
SimpleDateFormat yourDateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
Date yourDate = yourDateFormat.parse(yourDateString);
if (yourDate.after(currentDate)) {
System.out.println("After");
} else if(yourDate.equals(currentDate)) {
System.out.println("Same");
} else {
System.out.println("Before");
}
发布于 2015-04-08 20:00:20
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEEE");
System.out.println("DAY "+simpleDateFormat.format(date).toUpperCase());
simpleDateFormat = new SimpleDateFormat("MMMM");
System.out.println("MONTH "+simpleDateFormat.format(date).toUpperCase());
simpleDateFormat = new SimpleDateFormat("YYYY");
System.out.println("YEAR "+simpleDateFormat.format(date).toUpperCase());
编辑:date
= Fri Jun 15 09:20:21 CEST 2018
的输出为:
DAY FRIDAY
MONTH JUNE
YEAR 2018
https://stackoverflow.com/questions/9474121
复制相似问题