import java.util.Date; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; /* 使用方法: 將日期對象轉換成日期格式的字符串 1.Date() + SimpleDateFormat() DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");Date date = new Date();
System.out.println(dateFormat.format(date)); 2. Calender() + SimpleDateFormat() Calendar cal = Calendar.getInstance(); System.out.println(dateFormat.format(cal.getTime())); */ public class GetCurrentDateTime { public static void main(String[] args) { /*
java.text.SimpleDateFormat是一個以與語言環境有關的方式來格式化和解析日期的具體類.
注意:yyyy-MM-dd HH:mm:ss這里的大小寫要明確,可以參見JDK API java.text.SimpleDateFormat
*/ DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //創建日期的對象,通過format()方法將日期對象格式化,格式化后是String類型 Date date = new Date(); System.out.println(dateFormat.format(date)); /*Calendar 提供了一個類方法getInstance
,以獲得此類型的一個通用的對象。Calendar
的getInstance
方法返回一個Calendar
對象,
其日歷字段已由當前日期和時間初始化
*/
Calendar cal = Calendar.getInstance(); System.out.println(dateFormat.format(cal.getTime())); } }
/** * 日期對象和毫秒值之間的轉換。 * * 毫秒值-->日期對象 : 1,通過Date對象的構造方法 new Date (timeMillis); 2,還可以通過setTime設置。 * 因為可以通過Date對象的方法對該日期中的各個字段(年月日等)進行操作。 * * 日期對象-->毫秒值: 2,getTime方法。 * 因為可以通過具體的數值進行時間運算。 * */ long time = System.currentTimeMillis(); System.out.println(time);// 輸出的毫秒值 Date date = new Date();// 將當前日期和時間封裝成Date對象。 System.out.println(date);// 輸出Sat Nov 19 10:32:34 CST 2016 Date date2 = new Date();// 將指定毫秒值封裝成date對象 System.out.println(date2);// Sat Nov 19 10:34:16 CST 2016
/** * 對日期對象進行格式化。 將日期對象-->日期格式的字符串。 使用的是 DateFormat 類中的format方法。 * */ Date date = new Date(); // 獲取日期格式對象。具體着默認的風格。 FULL LONG等可以指定風格。 DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG);// 2016年11月19日 dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);// 2016年11月19日 上午10時48分39秒 // 自定義格式yyyy--MM--dd dateFormat = new SimpleDateFormat("yyyy--MM--dd");//2016--11--19 String str_date = dateFormat.format(date); System.out.println(str_date);
/** 將日期格式的字符串-->日期對象。 使用的是DateFormat類中的parse()方法。 */ String str_date = "2016年11月19日";// 這種日期格式需要DateFormat.LONG str_date = "2016--8--17";// 這種日期格式需要 new // SimpleDateFormat("yyyy--MM--dd") // 注意兩種日期轉換時的格式 DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG); dateFormat = new SimpleDateFormat("yyyy--MM--dd"); Date date = dateFormat.parse(str_date);// 拋出異常 String date2 = dateFormat.format(date); System.out.println(date2);