当前位置:  开发笔记 > 编程语言 > 正文

如何在Perl中解析JSON日期格式?

如何解决《如何在Perl中解析JSON日期格式?》经验,为你挑选了1个好方法。

如何解析我的Web服务在Perl中以JSON格式接收的日期格式?我想将它转换为DateTime对象:

Date(1216647000000-0400)

我假设自纪元以来它是毫秒以及时区偏移,但日期是偏离的.



1> Anirvan..:

从纪元开始,时间以毫秒为单位.除以1000得到纪元秒.

确保这适用于您遇到的其他情况:

use DateTime;

my $json_date = 'Date(1216647000000-0400)';
if ($json_date =~ m{ \b (\d+) \b ([+-]\d\d\d\d\b)? }x ) {
    my ( $epoch_milliseconds, $time_zone ) = ( $1, $2 );
    my $dt = DateTime->from_epoch( epoch => $epoch_milliseconds / 1000 );
    if ($time_zone) {
        $dt->set_time_zone($time_zone);
    }
    print $dt->datetime;
}

推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有