1 package com.java.test; 2 3 import java.text.SimpleDateFormat; 4 import java.util.Calendar; 5 6 public class TimeS { 7 8 public static void main(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