在将特定时区的时间转换为字符串时,我正在丢失一些我需要的信息。
示例:
ts = Time.now.to_i
time_zone = "America/Los_Angeles"
time = Time.now.in_time_zone(time_zone)
time_string = time.to_s
输出:
time
#=> Tue, 31 Mar 2015 12:05:03 PDT -07:00
time_string
#=> "2015-03-31 12:05:03 -0700"
如何让时间字符串等于Tue, 31 Mar 2015 12:05:03 PDT -07:00
?
答案 0 :(得分:1)
正如engineermnky所说,strftime是你的朋友:
time_string = time_string.to_time.strftime("%a, %d %b %Y %H:%M:%S PDT %z")
但我不确定区域%z!
答案 1 :(得分:0)
这有效:
Time.now.in_time_zone(time_zone).strftime("%a, %d %b %Y %H:%M:%S %Z")
"Tue, 31 Mar 2015 12:59:25 PDT"