如何在Ruby中将格式为< code > ' 2009-02-02 00:00:00 ' 的UTC时间戳转换为EST/EDT?注意,我没有使用Rails,而是一个简单的Ruby脚本。
1如果日期范围介于 EST(通常是 1 月至 3 月中旬)之间,则需要 UTC-5 小时。对于EDT,它是UTC-4小时。
到目前为止,我有以下功能将UTC转换为EST/EDT。
def utc_to_eastern(utc)
eastern = Time.parse(utc) # 2009-02-02 00:00:00 -0500
offset_num = eastern.to_s.split(" -")[1][1].to_i # 5
eastern_without_offset = (eastern-offset_num*60*60).strftime("%F %T") # 2009-02-01 19:00:00
return eastern_without_offset
end
puts utc_to_eastern("2009-02-02 00:00:00") # 2009-02-01 19:00:00
puts utc_to_eastern("2009-04-02 00:00:00") # 2009-04-01 20:00:00
上面的代码做了我想要的,但是我的解决方案有两个问题:
最好的方法是使用TZInfo。
require 'tzinfo'
require 'time'
def utc_to_eastern utc
tz = TZInfo::Timezone.get("America/New_York")
tz.to_local(Time.parse(utc)).strftime('%Y-%m-%d %H:%M:%S')
end
utc_to_eastern "2020-02-02 00:00:00 UTC" => "2020-02-01 19:00:00"
utc_to_eastern "2020-04-02 00:00:00 UTC" => "2020-04-01 20:00:00"
我需要转换一个日期列,数据库中的日期正好偏离了5个小时。时间保持为UTC,当他们查看应用程序时,它会显示EST时区。应用程序自动转换时间。UTC比东部标准时间提前了5秒。以下代码似乎为大多数时间戳固定了时间和日期,但是,有没有办法设置和偏移?报告回顾一天,并应将转换后的UTC时间返回到EST时间。
我尝试编写一个类来从UTC转换为EST时区。此外,我只想存储日期部分。它工作正常。现在我正在寻找dateFromUtcToJavaTimeZone方法的各种JUnit测试用例。你能给我一些建议吗?
我们在本地时区(如EST、PST、CST等)的sql中有多列。我们希望将UTC时区中的所有这些时区转换为考虑到日光节省并将其保存到另一列。 我尝试了下面的查询,但它将UTC转换为当地时区(EST ),但我正在寻找EST到UTC时区。 选择CONVERT(日期时间,SWITCHOFFSET(日期时间字段,日期部分(TZOFFSET,时间区域“东部标准时间”的日期时间字段))
我是PostgreSQL的新手,我想知道是否有一种直接的方法可以使用函数将表中的时间戳值转换为不同的时区。在我的情况下,是UTC到EST。 例如,我需要将这些值转换为EST(不仅仅是一个值,而是表中的所有值)
问题内容: 我需要有关此java方法的一些建议。此方法的目的是采用表示日期的字符串-该字符串是从EST时区中的日期创建的-并将其转换为UTC时区中的java Date对象。 我看到的问题是dt的值似乎已关闭。例如,如果dateString为‘10 / 16/2012 12:06 PM’-我期望dt(以UTC为单位)的值类似于“ 2012年10月16日,星期二,下午4:06”。取而代之的是,dt的值
我有一个以 UTC 时区存储交易日期时间的表。我需要将此时间转换为东部时区,即美国东部时间或美国东部夏令时,具体取决于交易日期。 如何在不编写大函数或创建为每个交易日期标记 EST / EDT 的表/视图的情况下执行此操作?