gpt4 book ai didi

ruby-on-rails - Ruby 字符串到日期的转换

转载 作者:数据小太阳 更新时间:2023-10-29 06:19:47 25 4
gpt4 key购买 nike

我在 Ruby on Rails 中遇到了一个问题。我希望将格式为 Tue, 10 Aug 2010 01:20:19 -0400 (EDT) 的字符串转换为日期对象。

无论如何我可以做到这一点。

以下是我看过并尝试过但没有成功的内容:

  1. Date.strptime(updated,"%a, %d %m %Y %H:%M:%S %Z")
  2. Chronic Parser
  3. Ruby: convert string to date
  4. Parsing date from text using Ruby

请帮我解决这个问题。

最佳答案

Date.parse 方法有什么问题?

str = "Tue, 10 Aug 2010 01:20:19 -0400 (EDT)"
date = Date.parse str
=> #<Date: 4910837/2,0,2299161>
puts date
2010-08-10

这似乎有效。

这里唯一的问题是时区。如果你想要 UTC 时区的日期,那么最好使用 Time 对象,假设我们有字符串:

str = "Tue, 10 Aug 2010 01:20:19 +0400"
puts Date.parse str
2010-08-10
puts Date.parse(Time.parse(str).utc.to_s)
2010-08-09

我找不到更简单的方法将 Time 转换为 Date

关于ruby-on-rails - Ruby 字符串到日期的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3599239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com