国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

利用SimpleDateFormat進(jìn)行日期格式轉(zhuǎn)換

2019-11-10 18:13:14
字體:
供稿:網(wǎng)友

前言

SimpleDateFormat是在一定的語言環(huán)境中,使用給定的模式和默認(rèn)的日期格式符號(hào)來對(duì)日期進(jìn)行格式轉(zhuǎn)換的類。

支持的時(shí)間和日期模式

字母 含義 表示 例子
G 紀(jì)元 Text AD
y 年份 Year 1996; 96
M/L 月份 Month July; Jul; 07
w 一年中的第幾周 Number 27
W 一個(gè)月中的第幾周 Number 2
D 一年中的第幾天 Number 189
d 一個(gè)月中的第幾天 Number 10
F 一個(gè)月中的第幾周 Number 2
E 一周的星期數(shù) Text Tuesday; Tue
u 一周的星期數(shù) Number 1
a am/pm 標(biāo)記 Text PM
H 一天中的小時(shí)數(shù)(0-23) Number 0
k 一天中的小時(shí)數(shù)(1-24) Number 24
K 十二小時(shí)制中的小時(shí)數(shù)(0-11) Number 0
h 十二小時(shí)制中的小時(shí)數(shù)(1-12) Number 12
m Number 30
s Number 55
S 毫秒 Number 978
z 時(shí)區(qū) General time zone Pacific Standard Time; PST; GMT-08:00
Z 時(shí)區(qū) RFC 822 time zone -0800
X 時(shí)區(qū) ISO 8601 time zone -08; -0800; -08:00

注意: 模式中的字母是區(qū)分大小寫的,并且在模式中四個(gè)字母就能表示這個(gè)類型的全長(zhǎng),例如我們用MMMMM來表示月份是不必要的。當(dāng)然用太少的字母來解析一定的格式也是不行的,例如我們用”yyyy.MM.dd G hh:mm aaa”來解析“2017.February.04 AD 12:08 PM”字符串時(shí)會(huì)報(bào)“Unparseable date: ‘2017.February.04.04 AD 12:08 PM’”錯(cuò)誤。

下面給出了一些常見的日期表示方式和它對(duì)應(yīng)的模式:

輸入的字符串 對(duì)應(yīng)的模式
2001.07.04 AD at 12:08:56 PDT yyyy.MM.dd G ‘a(chǎn)t’ HH:mm:ss z
Wed, Jul 4, 01 EEE, MMM d, yy
12:08 PM hh:mm a
12 o’clock PM, Pacific Daylight Time hh ‘o”clock’ a, zzzz
0:08 PM, PDT K:mm a, z
02001.July.04 AD 12:08 PM yyyyy.MMMM.dd GGG hh:mm aaa
Wed, 4 Jul 2001 12:08:56 -0700 EEE, d MMM yyyy HH:mm:ss Z
010704120856-0700 yyMMddHHmmssZ
2001-07-04T12:08:56.235-0700 yyyy-MM-dd’T’HH:mm:ss.SSSZ
2001-07-04T12:08:56.235-07:00 yyyy-MM-dd’T’HH:mm:ss.SSSXXX
2001-W27-3 YYYY-‘W’ww-u

實(shí)際應(yīng)用

利用SimpleDateFormat進(jìn)行日期轉(zhuǎn)換的代碼示例如下:

//output: Thu Jul 05 03:08:56 CST 2001String string = "2001.07.04 AD at 12:08:56 PDT";DateFormat format = new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z", Locale.ENGLISH);Date date = format.parse(string);System.out.PRintln(date);

注意: 推薦使用SimpleDateFormat(String pattern, Locale locale)而不是SimpleDateFormat(String pattern)。因?yàn)楫?dāng)你沒有指明locale的時(shí)候,會(huì)使用默認(rèn)的locale,如果你輸入的字符串格式與locale格式不一致時(shí)會(huì)出現(xiàn)java.text.ParseException 錯(cuò)誤。

另外 SimpleDateFormat 類不都是線程安全的,在多線程環(huán)境下調(diào)用 format() 和 parse() 方法應(yīng)該使用同步代碼來避免問題。推薦為每個(gè)線程創(chuàng)建獨(dú)立的格式實(shí)例,如果多個(gè)線程同時(shí)訪問一個(gè)格式,則它必須保持外部同步。具體解決方法可以參考:深入理解Java:SimpleDateFormat安全的時(shí)間格式化


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 东明县| 嘉祥县| 日土县| 平凉市| 阜宁县| 西青区| 海口市| 镇沅| 奉化市| 武城县| 梁平县| 西乡县| 沙湾县| 内江市| 罗山县| 浏阳市| 太和县| 阳城县| 盐山县| 上思县| 金山区| 嵩明县| 南澳县| 达日县| 锦州市| 合肥市| 梧州市| 彭泽县| 赣州市| 军事| 炉霍县| 驻马店市| 察哈| 塔河县| 邻水| 通城县| 九江市| 元阳县| 会昌县| 犍为县| 昔阳县|