1 packagecom.java.test;2
3 importjava.text.SimpleDateFormat;4 importjava.util.Calendar;5
6 public classTimeS {7
8 public static voidmain(String[] args) {9 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss-SSS");10 String time =format.format(Calendar.getInstance().getTime());11 System.out.println("完整的时间和日期: " +time);12
13 SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd");14 String time2 =format2.format(Calendar.getInstance().getTime());15 System.out.println("完整的日期: " +time2);16
17 SimpleDateFormat format3 = new SimpleDateFormat("HH-mm-ss-SSS");18 String time3 =format3.format(Calendar.getInstance().getTime());19 System.out.println("完整的时间: " +time3);20 }21
22 }
执行结果:
完整的时间和日期: 2016-07-11-17-00-49-861
完整的日期: 2016-07-11
完整的时间: 17-00-49-862
从结果可以看出,通过Calendar.getInstance().getTime()就可以获取本地当前时间,然后根据的format中不同的(Date and Time Patterns)来展示。
Date and Time Patterns参考Java API中的SimpleDateFormat类介绍
注:避免使用下面的方式,因为第二次获取到的信息和第一次的信息是一样的。
Calendar cal = Calendar.getInstance();
cal.getTime();//获取一次
其他代码
cal.getTime();//再获取一次
将“20200916123456”转换成Calendar,并做一些时间偏移操作(参考:https://blog.csdn.net/dz77dz/article/details/85173984)
1 SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");2 try{3 Date date = format.parse("20200916123456");4 Calendar calendar =Calendar.getInstance();5 calendar.setTime(date);6
7 calendar.add(Calendar.DAY_OF_MONTH,1);//加1天8 System.out.println(format.format(date));9 System.out.println(format.format(calendar.getTime()));10 } catch(ParseException e) {11 logger.debug(e.getMessage());12 }
结果:
20200916123456
20200917123456