有關java中時間格式的調整
在java中獲取一個時間或者是處理時間數據時,往往會發現時間的格式不是我們所需要的。這個時候如果把時間轉化成字符串,然后在處理是可以,不過呢?你會不會覺得很是麻煩。我個人認為在一個大型的項目對字符串操作多了,不是什么好事。
如果你常用java API文檔你會發現這個類的SimpleDateFormat,這個類就是格式化時間的。
使用方法也是很簡單的
SimpleDateFormat form = new SimpleDateFormat("yyyyMMddHHmmss");
form.format(時間);
其中SimpleDateFormat構造函數內的字符串就是格式化輸入的格式:
字母 日期或時間元素 表示 示例
G Era 標志符 Text AD
y 年 Year 1996; 96
M 年中的月份 Month July; Jul; 07
w 年中的周數 Number 27
W 月份中的周數 Number 2
D 年中的天數 Number 189
d 月份中的天數 Number 10
F 月份中的星期 Number 2
E 星期中的天數 Text Tuesday; Tue
a Am/pm 標記 Text PM
H 一天中的小時數(0-23) Number 0
k 一天中的小時數(1-24) Number 24
K am/pm 中的小時數(0-11) Number 0
h am/pm 中的小時數(1-12) Number 12
m 小時中的分鐘數 Number 30
s 分鐘中的秒數 Number 55
S 毫秒數 Number 978
z 時區 General time zone Pacific Standard Time; PST; GMT-08:00
Z 時區 RFC 822 time zone -0800
說明一下:
模式字母通常是重復的,其數量確定其精確表示:
Text: 對于格式化來說,如果模式字母的數量大于或等于 4,則使用完全形式;否則,在可用的情況下使用短形式或縮寫形式。對于分析來說,兩種形式都是可接受的,與模式字母的數量無關。
Number: 對于格式化來說,模式字母的數量是最小的數位,如果數位不夠,則用 0 填充以達到此數量。對于分析來說,模式字母的數量被忽略,除非必須分開兩個相鄰字段。
Year: 對于格式化來說,如果模式字母的數量為 2,則年份截取為 2 位數,否則將年份解釋為 number。
對于分析來說,如果模式字母的數量大于 2,則年份照字面意義進行解釋,而不管數位是多少。因此使用模式 "MM/dd/yyyy",將 "01/11/12" 分析為公元 12 年 1 月 11 日。
如果你常用java API文檔你會發現這個類的SimpleDateFormat,這個類就是格式化時間的。
使用方法也是很簡單的






















模式字母通常是重復的,其數量確定其精確表示:
Text: 對于格式化來說,如果模式字母的數量大于或等于 4,則使用完全形式;否則,在可用的情況下使用短形式或縮寫形式。對于分析來說,兩種形式都是可接受的,與模式字母的數量無關。
Number: 對于格式化來說,模式字母的數量是最小的數位,如果數位不夠,則用 0 填充以達到此數量。對于分析來說,模式字母的數量被忽略,除非必須分開兩個相鄰字段。
Year: 對于格式化來說,如果模式字母的數量為 2,則年份截取為 2 位數,否則將年份解釋為 number。
對于分析來說,如果模式字母的數量大于 2,則年份照字面意義進行解釋,而不管數位是多少。因此使用模式 "MM/dd/yyyy",將 "01/11/12" 分析為公元 12 年 1 月 11 日。
posted on 2007-06-30 01:09 冷面閻羅 閱讀(1145) 評論(1) 編輯 收藏 所屬分類: java