2
如何解析我的Web服務在Perl中以JSON格式接收的日期格式?我想將其轉換爲一個DateTime對象:如何解析Perl中的JSON日期格式?
Date(1216647000000-0400)
我以爲這是因爲與時區偏移量沿毫秒爲單位,但日期是路要走。
如何解析我的Web服務在Perl中以JSON格式接收的日期格式?我想將其轉換爲一個DateTime對象:如何解析Perl中的JSON日期格式?
Date(1216647000000-0400)
我以爲這是因爲與時區偏移量沿毫秒爲單位,但日期是路要走。
時間以自時代開始以毫秒爲單位列出。除以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;
}
\ b在\ d +和[+ - ]之間是冗餘的。我會刪除2nd&3rd \ b並在最後添加一個。 – ysth 2009-03-03 05:48:08
如何是日期的路要走?你能舉一個JSON日期和它的值的例子嗎? – ysth 2009-03-03 05:49:18