回答
是,它被稱爲SimpleDateFormat,你只需要定義你的模式。
當你沒有(?voluntarly)一年準確,我增加了一個:
DateFormat df = new SimpleDateFormat("M'm'W'w'F'd'H'h'm'm's's'yyyy");
System.out.println(df.parse("5m1w5d3h10m15s"+"2012"));
當然也有一些可用的庫(很多人重定向到喬達,這比標準和混亂的更好java庫),但是因爲你的問題是關於「如果java有內置的解析時間/日期的方法」,答案顯然是肯定的。
您可能想要將其解析爲一段時間。而不是日期,除非您的輸入看起來像「2012y10m8d」等。如果您嘗試將一段時間表示爲java.util.Date,則會遇到許多問題。相信我,我之前一直在走這條路。
請考慮在時間段內使用Joda時間。看到這個問題的細節:How do I parse a string like "-8y5d" to a Period object in joda time
HumanTime看起來也很有趣。
我不知道該特定格式...但我建議你看一看this
也不會太難建立你自己的解析器...
您可以參考這篇文章的想法: Java date format - including additional characters
,當然還有參考SimpleDateFormat的類。 http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
使用SimpleDateFormatter類將幫助您將字符串轉換爲日期。使用喬達時間PeriodFormatter將允許您轉換/表示一段時間而不是日期。例如。你將能夠表達和解析如:15m1w5d3h10m15s
。
我會先倒轉字符串。然後,我會將字符串標記爲6個數字分開的部分 - 幾個月,幾周,幾天,幾小時,幾分鐘,幾秒。我會將每個令牌存儲在一個數組中,並分別對待每個元素:a [0] =秒,a [1] =分鐘,... a [5] =月。這是我能想到的最直觀的方式,因爲我無法回想起任何爲你做這件事的圖書館。當然,你沒有詳細說明「解析」的含義。
- 1. 用java中的timezone解析時間戳?
- 2. 如何解析R中的時間戳?
- 3. 在java中解析日期和時間
- 4. 如何解析UTC時間並顯示JodaTime java中的本地時間?
- 5. 如何設置解析時間限制在java中
- 6. 的java jsoup解析如何解析HTML
- 7. 如何解析Java中
- 8. 如何解析Java中
- 9. 如何解析Java中
- 10. 如何用Java或Perl解析Unicode字符的時間戳?
- 11. 解析時間
- 12. Java解析XML日期 - 排除時間
- 13. Java本地時間解析異常
- 14. 解析日期時間到JAVA日期
- 15. Java時間戳字符串解析
- 16. Java解析器時間問題
- 17. 與Java時間解析混淆UTC
- 18. python中csv解析時間
- 19. 在python中解析時間
- 20. 在Golang中解析時間
- 21. Java如何在Java中解析uint8?
- 22. 如何解析相對時間?
- 23. 如何獲得腳本解析時間?
- 24. 如何解析日期時間sec.ms
- 25. 如何解析dHHmm到持續時間?
- 26. 如何僅解析日期到時間?
- 27. 如何解析ImageAssest Complile時間?
- 28. 如何解析Java中的jquery.sheet的JSON?
- 29. 解析時間SimapleDateFormat
- 30. 解析時間段
你可以通過看電視或踢足球來消磨時間嗎?開玩笑!你到底在哪裏尋找解決方案? – CKing
這種輸入的來源是什麼? – Vikdor