C中的Solaris时区(strftime上缺少%z)
我有一个应用程序写入另一个应用程序,需要提供系统的日期+时区。 我一直在使用带有%z
参数的strftime来获取时区,并且它在Linux上运行良好。 然而,上周我们决定将它合并到solaris,以发现%z
不存在。
有人建议使用%Z
,它会给出时区名称,但我需要%z给出时区的偏移格式,如+0100
或-0300
。
有人有想法吗?
%z不是POSIX。 您必须通过查找localtime和gmtime之间的差异来自行计算偏移量。
有关Perl示例, 请参阅此处 。