我使用 Google 的时区 API 获取 TimeZoneID,并将其传递给 ruby gem TZInfo 以获取本地时间。如何从此信息中获取时区短名称(PST,PDT,EST等)。我尝试了strftime(%Z)
但返回"UTC"。这是一个红宝石轨道应用程序。
TZInfo::Timezone#strftime
应该工作:
require "tzinfo"
tz = TZInfo::Timezone.get("America/New_York")
puts tz.strftime("%Z")
如果你试过了,但没有用,那是神秘的。
或者,您可以使用TZInfo::TimezonePeriod#abbreviation
:
tz = TZInfo::Timezone.get('America/New_York')
period = tz.period_for_utc(Time.now.utc)
puts period.abbreviation