簡體   English   中英

用SimpleDateFormat解析日期

[英]parse date with SimpleDateFormat

我嘗試使用SimpleDateFormat解析此字符串20130718T090000Z。 我喜歡這樣:

        String timeString= "20130718T090000Z";
        DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd'T'HHmmssZ");
        Date date= dateFormat.parse(timeString);

我收到了無法解析的錯誤。 從這里引用http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html#rfc822timezone我發現我沒有做錯任何事,還是我呢? Tks。

使用此格式字符串"yyyyMMdd'T'HHmmss'Z'" 它不解析的原因是,輸入的末尾沒有可解析的字符Z "20130718T090000Z"

Z是時區。 您沒有在日期字符串中提供時區。

您應該已經完成​​了一些操作,例如String timeString= "20130718T090000-0700";

如果您想將Z視為常數,則需要將格式更改為yyyyMMdd'T'HHmmss'Z'

您有一個問題,您的時間String中的Z無法識別為有效的時區。

使用Java 6,您必須自己處理時區Z ,然后將其刪除或將其替換為+0000

您必須在輸入字符串中給出Z的值。 as String timeString =“ 20130718T090000 + 0000”;

這將根據格式解析您的日期。

希望能幫助到你

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM