2010-06-30 68 views
0

我收到一個文件的最後修改日期日期的格式,使用下面的代碼:如何改變從毫秒

xmlUrl = new URL("http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html"); 
URLConnection urlconn = xmlUrl.openConnection(); 
urlDate = new Date(urlconn.getLastModified()); 

在結果,我在下面的格式得到日期:

Tue Dec 18 05:11:33 Asia/Karachi 2007 

我想將其更改爲簡單的DD MMM yyyy格式

我用:

SimpleDateFormat format = new SimpleDateFormat("dd MMM yyyy"); 
try { 
     tempDate = format.parse(urlDate.toString()); 

    } catch (ParseException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

但它並沒有幫助我解決這個問題,我仍然以上述長格式獲取日期。

回答

5
tempDate = format.parse(urlDate.toString()); 

這是倒退,應該導致異常。 A DateFormat用於在StringDate兩種方式之間轉換,並且格式字符串必須始終匹配String一側的模式。

你想要的是這樣的:

tempDate = format.format(urlDate); 
+0

tempDate = format.format(urlDate) 不工作,因爲格式(Date)方法返回一個字符串,tempDate爲Date類型的變量。 我做了什麼 DateFormat format = DateFormat.getDateInstance(DateFormat.FULL); tempDate = format.format(urlDate); 即使我試圖投它,但沒有使用:( – kaibuki 2010-06-30 08:49:31

+0

@kaibuki:日期不具有*格式,它始終是一個精度爲毫秒的時間戳。如果要以特定格式顯示它,那意味着將其轉換成一個字符串。 – 2010-06-30 09:20:09