2013-10-02 63 views
0

我試圖格式化使用Timestamp對象:格式化時間戳的Android

new SimpleDateFormat(
    "M/dd/yyyy h:mm:ss a", 
    Locale.getDefault()).format(new Timestamp(0)); 

但這會導致格式化它作爲我明確的模式不管是什麼。我希望它能夠在常見的地區改變日期和月份。我將如何做到這一點?

回答

0
String s = new SimpleDateFormat(
    "M/dd/yyyy h:mm:ss a", 
    Locale.getDefault()).format(new Timestamp(0)); 
System.err.println(s); 

什麼打印?

如果你想有默認的語言環境與秩序的格式,不指定它:

String s = new SimpleDateFormat().format(new Timestamp(0)); 
System.err.println(s); 

文檔SimpleDateFormat()

+0

它打印出這樣的「10/2/2013 5:05:22 PM」,無論我設置了什麼區域設置。 – ashishduh

+0

你期望什麼?您強制使用格式...如果您想要星期幾的名稱或月份的名稱,它可能會有所不同。你的格式只是數字。 – Aubin

+0

那麼,由於構造函數接受了一個Locale參數,我預計它會嘗試將我的格式字符串與本地模式匹配。但在閱讀文檔時,我發現Locale只是用於獲取本地化的DateFormatSymbols和Calendar。 – ashishduh