簡體   English   中英

將字符串轉換為日期 - 獲取錯誤

[英]Convert String to Date - Getting error

什么是將字符串“ 06 Nov 2013 17:43:07 ”轉換為joda DateTime / Date的最佳方法? 我的代碼出錯了

碼:

   DateTime publishTime = new DateTime((String)dataMap.getValue("publishDate"));

錯誤:

java.lang.IllegalArgumentException: Invalid format: "06 Nov 2013 17:43:07" is malformed     
at " Nov 2013 17:43:07"
      at org.joda.time.format.DateTimeFormatter.parseMillis(DateTimeFormatter.java:747)

是否有我們可以傳遞給SimpleDateFormat構造函數的自定義日期格式列表? 找不到合並列表/鏈接。

謝謝

您應該使用SimpleDateFormat類。

除了Dateformats之外,這里有很好的描述http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

如果月份字段與默認Locale字段不匹配,則JodaTime的DateTimeFormat會引發異常。 嘗試使用ENGLISH Locale

DateTimeFormatter fmt = 
   DateTimeFormat.forPattern("dd MMM yyyy HH:mm:ss").withLocale(Locale.ENGLISH);
DateTime publishTime = DateTime.parse("06 Nov 2013 17:43:07", fmt);
Date publishDate = publishTime.toDate();

暫無
暫無

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

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