Java 日期類型與字符串的相互轉換
日期類型中,英文字符的含義:
字符 | 含義 | 示例 |
---|---|---|
G | Era標志符 | Text AD |
y | 年 Year | yyyy 1996; yy 96 |
Y | 當天所在的周屬於的年份 | YYYY 1996 |
M | 年中的月份 | Month MMM => July; Jul; MM => 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 | 時區 | PFC 822 time zone -0800 |
使用的類:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
(一) 字符串轉日期格式
例一 : 字符串 "31/08/2015:00:04:37" 轉日期 Mon Aug 31 00:04:37 CST 2015 step 1 : //這里是要被轉換的字符串格式 "31/08/2015:00:04:37" SimpleDateFormat srtFormat = new SimpleDateFormat("dd/MM/yyyy:HH:mm:ss"); step 2 : //將字符串日期轉為默認的日期類型的格式 Mon Aug 31 00:04:37 CST 2015 Date date = strFormat.parse(strDate)
例二: 字符串 "31/Aug/2015:00:04:37 +0800" 轉日期 step 1 : //這里是要被轉換的字符串格式 以及時區" SimpleDateFormat srtFormat = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss",Locale.ENGLISH); step 2 : //將字符串日期轉為默認的日期類型的格式 Mon Aug 31 00:04:37 CST 2015 Date date = strFormat.parse(strDate)
(二)日期格式轉字符串
例一 :/將默認日期類型 Mon Aug 31 00:04:37 CST 2015 轉為需要的字符串格式
//這里是需要轉換成字符串的格式
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formatDate = dateFormat.format(defaultDate);
將得到字符串 "2015-08-31 00:04:37"