2012-07-15 40 views
-1

我需要從「2012-07-15 17:00 GMT」這樣的字符串中刪除「GMT」。 嘗試使用此代碼,但testDate返回null。 任何人都可以幫忙嗎?Android日期從DateTime刪除GMT

謝謝

String date = "2012-07-15 17:00 GMT"; 
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); 
     Date testDate = null; 
     try { 
      testDate = sdf.parse(date); 
     }catch(Exception ex){ 
      ex.printStackTrace(); 
     } 
+0

解決!對不起大家。我的代碼中有「yyyy-MMM-dd HH:mm」。我的錯。當我將代碼更正爲MM時正常工作。 – filipe 2012-07-15 16:34:51

回答

2

這能否幫助?

String date = "2012-07-15 17:00 GMT"; 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm z"); 
Date testDate = null; 
try { 
    testDate = sdf.parse(date); 
}catch(Exception ex){ 
    ex.printStackTrace(); 
} 
System.out.println(testDate); 

sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); 
date = sdf.format(testDate); 
System.out.println(date); 
+0

感謝您的幫助,但是對我的代碼卻是一個簡單的錯誤。抱歉。 – filipe 2012-07-15 16:38:43

+0

@filipe我在上面的代碼示例中提到了該錯誤,並在您的評論前7分鐘糾正過。 ;) – sunil 2012-07-15 16:45:09

+0

;)好的。謝謝。 – filipe 2012-07-15 16:55:37

0

既然你顯然是以一個String開始,爲什麼不切斷最後四個字符,例如用String.substring()呢?

date = date.substring(0, date.length() - 4); 

你也可以確認" GMT"存在:

int index = date.indexOf(" GMT"); 
if(index > -1) 
    date = date.substring(0, index); 

如果不更改日期的格式,無需使用額外的SimpleDateFormat和Date類。

+0

感謝您的幫助,但是對我的代碼卻是一個簡單的錯誤。抱歉。 – filipe 2012-07-15 16:39:08