2013-10-08 130 views
6

我讀過很多回答這個問題,但沒有回答解決我的問題java.text.ParseException:無法解析的日期:「」(偏移量爲0)

我試圖解析這個字符串:

"2013-10-07T23:21:00+01:00"

與SimpleDateFormat的Date對象:

"yyyy-MM-dd'T'HH:mm:ssZZZZZ"

但它一直產生錯誤:

java.text.ParseException: Unparseable date: "" (at offset 0)

注意:我在Android上試過這個,我是初學者。

+1

你能請張貼的實際來源和堆棧跟蹤? –

+0

歡迎來到SO。正如@GyroGearless所說,請考慮添加您的代碼和完整的堆棧跟蹤。這些信息對您有所幫助。 – dic19

+0

從異常看起來你試圖解析一個空字符串。在解析函數之前檢查字符串。 – sjdutta

回答

-2

如果你使用的Java 7,您可以使用:

yyyy-MM-dd'T'HH:mm:ssXXX 

您可以查看更多here

+0

「X」可用自Java 7. – DArkO

+2

不幸的是,Android不支持Java 7 –

2

與下面的代碼嘗試

public static Calendar parseDate(String dateTimeStr) 
      throws ParseException { 
     Calendar calendar = GregorianCalendar.getInstance(); 
     String s = dateTimeStr.replace("Z", "+00:00"); 
     try { 
      s = s.substring(0, 22) + s.substring(23); 
     } catch (IndexOutOfBoundsException e) { 
      throw new ParseException("Invalid length", 0); 
     } 
     Date date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ").parse(s); 
     calendar.setTime(date); 
     return calendar; 
    } 
相關問題