本文介紹了如何使用SimpleDateFormat設(shè)置日期格式的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!
問(wèn)題描述
我無(wú)法設(shè)置日期格式。
dateFormat.format()
接受Date
作為參數(shù)。因此我創(chuàng)建了一個(gè)新的Date()
它顯示以下Date()方法已棄用,并且我在運(yùn)行時(shí)出現(xiàn)以下異常。
異常:
Exception in thread "main" java.lang.IllegalArgumentException at
java.util.Date.parse(Date.java:598)
public class MyDate {
public static void main(String[] args) {
Date date = new Date("2012-02-16T00:00:00.000-0500");
SimpleDateFormat dateFormat = new SimpleDateFormat(
"dd-MMM-yyyy HH:mm:ss");
String stringDate = dateFormat.format(date);
System.out.println(stringDate); // how do I test this conversion??
}
}
我的數(shù)據(jù)庫(kù)日期格式為-2012-02-16T00:00:00.000-0500
我需要將其轉(zhuǎn)換為以下格式的字符串:DD-MMM-yyyy hh:mm:ss
我正在使用Java6
推薦答案
如果您想讀入日期”2012-02-16T00:00:00.000-0500″,您可能應(yīng)該使用SimpleDateFormat
parse
,如下所示:
DateFormat parseFormat = new SimpleDateFormat(
"yyyy-MM-dd'T'HH:mm:ss.SSSZ");
Date date = parseFormat.parse("2012-02-16T00:00:00.000-0500");
與您的其余代碼一起寫(xiě)道:
16-Feb-2012 05:00:00
SimpleDateFormat
documentation中列出了解析格式模式字母。T
用撇號(hào)轉(zhuǎn)義。
此答案假定為Java 7,否則您將使用Java 8中的新date & time API
這篇關(guān)于如何使用SimpleDateFormat設(shè)置日期格式的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,