java中Date, DateFormat的一些方法總結
阿新 • • 發佈:2019-01-02
1:DateDemo1類
/*
* 取得系統的時間
*/
public class DateDemo1 {
public static void main(String args[]) {
System.out.println(System.currentTimeMillis());
}
輸出為:1311060393171
執行結果會顯示從1970年1月1日開始到取得系統時間為止所經過的毫秒數,例如1115346430703這個數字,但這樣的數字沒有人確切瞭解它的意 義是什麼,您可以使用Date類別來讓這個數字變的更有意義一些
2:DateDemo2類
用date獲得時間的值,如時、分、秒、月、日、年得方法已經過時,需要改用Calendar的方法來獲取時間的值public class DateDemo2 { @SuppressWarnings("deprecation") public static void main(String args[]) { Date date = new Date(); System.out.println("date.toString: " + date.toString()); System.out.println("date: " + date.getDate()); System.out.println("day: " + date.getDay()); System.out.println("hour: " + date.getHours()); System.out.println("minutes: " + date.getMinutes()); System.out.println("month: " + (date.getMonth() + 1)); System.out.println("seconds: " + date.getSeconds()); System.out.println("time: " + date.getTime()); System.out.println("timezone: " + date.getTimezoneOffset()); System.out.println("year: " + (date.getYear() + 1900)); Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.MONTH) + 1; int day = calendar.get(Calendar.DATE); int hour = calendar.get(Calendar.HOUR); int minute = calendar.get(Calendar.MINUTE); int second = calendar.get(Calendar.SECOND); System.out.println("----------Calendar-------"); System.out.println("year: " + year); System.out.println("month: " + month); System.out.println("day: " + day); System.out.println("hour: " + hour); System.out.println("minute: " + minute); System.out.println("second: " + second); } }
輸出結果為:
date.toString: Tue Jul 19 15:32:42 CST 2011
date: 19
day: 2
hour: 15
minutes: 32
month: 7
seconds: 42
time: 1311060762362
timezone: -480
year: 2011
----------Calendar-------
year: 2011
month: 7
day: 19
hour: 3
minute: 32
second: 42
3:DateDemo3類
使用DateFormat來格式化日期資料,上面部分為從Date-->String,下面的部分為從String-->Datepublic class DateDemo3 { public static void main(String args[]) { Date date = new Date(); /* * DateFormat會依電腦上的區域設定顯示時間格式,EE表示星期,MM表示月份、dd表示日期,而yyyy是西元,每個字元的設定都各有其意義 * 從Date-->String */ DateFormat dateFormat = new SimpleDateFormat("EE-MM-dd-yyyy"); System.out.println(dateFormat.format(date)); DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd"); System.out.println(format1.format(date)); DateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println(format2.format(date)); /* * 從String-->Date */ String dateStr = "2011-7-19"; try { Date dateTrans = format1.parse(dateStr); //System.out.println(dateTrans.toString()); System.out.println(dateTrans.toLocaleString()); //轉換為本地的形式 } catch (ParseException e) { e.printStackTrace(); } } }
輸出結果為:
星期二-07-19-2011
2011-07-19
2011-07-19 15:33:27
2011-7-19 0:00:00
4:DateDemo4類
public class DateDemo4 { public static void main(String[] args) { Date date = new Date(); DateFormat shortFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT); DateFormat mediumFormat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM); DateFormat longFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG); DateFormat fullFormat = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL); System.out.println(shortFormat.format(date)); System.out.println(mediumFormat.format(date)); System.out.println(longFormat.format(date)); System.out.println(fullFormat.format(date)); } }
輸出結果為:
11-7-19 下午3:33
2011-7-19 15:33:54
2011年7月19日 下午03時33分54秒
2011年7月19日 星期二 下午03時33分54秒 CST
5:DateDemo5類
public class DateDemo5 {
public static void main(String args[]) {
Date date = new Date();
Locale locale = new Locale("en", "US");
DateFormat shortDateFormat = DateFormat.getDateInstance(DateFormat.SHORT, locale);
DateFormat mediumDateFormat = DateFormat.getDateInstance(DateFormat.MEDIUM, locale);
DateFormat longDateFormat = DateFormat.getDateInstance(DateFormat.LONG, locale);
DateFormat fullDateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
System.out.println(shortDateFormat.format(date));
System.out.println(mediumDateFormat.format(date));
System.out.println(longDateFormat.format(date));
System.out.println(fullDateFormat.format(date));
}
}
輸出結果為:
7/19/11
Jul 19, 2011
July 19, 2011
Tuesday, July 19, 2011