我想显示时区的缩写。 但是我的Ruby一直给我全表。
irb(main):001:0> Time.now => 2014-02-28 15:11:21 +0530 irb(main):002:0> Time.now.zone => "India Standard Time" irb(main):003:0>
这是在Ruby 1.9.3p125。 在Ruby 2.0中也尝试了相同的结果! 即使strftime("%Z")
给出时区的完整forms,而不是缩写。
但是文件明确指出只有这个缩写应该被返回。 我实际上在Windows 7
上构build了一个rhodes
应用程序
编辑: Time.now.strftime("%Z")
也给出了完整的forms。
这是Windows的好处吗?
这个问题似乎是Windows特定的,因为我能够自己重现它。 即使在文档中,它也指出:
Also, %Z is highly dependent on the operating system. For example, it may generate a non ASCII string on Japanese Windows. ie the result can be different to “JST”.
我环顾四周,似乎无法找到任何简单的解决方案,因为它依赖于操作系统。