回答
對Ruby 1.9.2:
require 'date' # If not already required. If in Rails then you don't need this line).
puts DateTime.parse("2011-06-02T23:59:59+05:30").to_date.to_s
Simplies方式是
require 'date'
date = "2011-06-02T23:59:59+05:30".gsub(/T.*/, '')
DateTime.parse(date)
或者你可以使用日期而不是日期時間並忽略gsub操作; – Schovi 2011-06-02 11:56:45
require 'date'
d = Date.parse("2011-06-02T23:59:59+05:30")
d.strftime("%F")
或簡單的'd.to_s' :) – rubyprince 2011-06-02 12:00:43
這將不會正確解析時間戳 - 使用'DateTime .parse()',除非你只想使用日期。 – 2014-06-01 13:08:06
@ AdamMcArthur ..該OP特別只想要日期部分。但是,你是對的。即使是日期,如果我們省略時間部分和時區,它可能會很危險,因爲它可能是另一個時區的另一天。所以,最好使用'DateTime.parse'。 – rubyprince 2014-06-02 09:48:15
Time.parse()應允許您解析整個日期時間。然後,您可以使用time.strftime(字符串)將其格式化爲字符串中的日期。
date = Time.parse("2011-06-02T23:59:59+05:30") date_string = time.strftime("%y-%m-%d") of date_string = time.strftime("%F")
(見Ruby Doc for Time更多的輸出字符串格式) 如果你想有一個字符串上面應該工作;如果你想要一個日期對象來處理,那麼ruby Date類可以幫助你處理它,但是我相信所有事情仍然需要用Time對象來完成;有關Date類的詳細信息,請參閱Ruby Doc for Date。
希望有幫助,讓我知道如果我用我的答案走錯了方向。
- 1. 將字符串日期時間轉換爲Ruby日期時間
- 2. 將字符串轉換爲日期並將日期轉換回字符串
- 3. 將字符串轉換爲日期。 SQL
- 4. 將字符串轉換爲日期python
- 5. 將字符串轉換爲日期
- 6. SQL將字符串轉換爲日期
- 7. 將字符串轉換爲日期C++
- 8. SimpleDateFormat將字符串轉換爲日期
- 9. 將日期字符串轉換爲NSDate?
- 10. 將字符串轉換爲javascript日期
- 11. JavaScript將字符串轉換爲日期
- 12. 將日期字符串轉換爲NSDate
- 13. 將字符串轉換爲MySQL日期
- 14. 將字符串轉換爲日期
- 15. Swift將字符串轉換爲日期
- 16. Stata:將字符串轉換爲日期
- 17. Android將字符串轉換爲日期
- 18. 將JavaScript字符串轉換爲日期
- 19. 將日期轉換爲字符串
- 20. 將字符串轉換爲日期
- 21. Java:將字符串轉換爲日期
- 22. Sqlite將字符串轉換爲日期
- 23. 將字符串轉換日期爲datetime
- 24. 將字符串轉換爲日期php
- 25. 將長字符串轉換爲日期
- 26. 將字符串轉換爲SQL日期
- 27. 將日期轉換爲字符串SQL
- 28. Bash - 將字符串轉換爲日期
- 29. 將字符串轉換爲日期
- 30. 將字符串轉換爲日期SparkR
這已被問及答覆無數次。我建議關閉重複。 http://stackoverflow.com/questions/2720907/ruby-convert-string-to-date – 2011-06-02 12:00:26
[Ruby字符串日期轉換]的可能重複(http://stackoverflow.com/questions/3599239/ruby-string-to日期轉換) – DGM 2011-06-02 21:12:55