0

これを新しい日付(1357106400000)として返すページがあります(これはJavascriptだと思います)。

Rubyを使用してそれを変換するにはどうすればよいですか。私はもう試した:

Date.new(1357106400000)DateTime.new(1357106400000)などがありますが、表示する正しい日付を取得できません。

返される日付は2012年9月12日である必要があります

4

2 に答える 2

1

Javascript の場合:

> new Date(1357106400000)
Wed Jan 02 2013 06:00:00 GMT+0000 (GMT Standard Time)

ルビーの場合:

>  require 'date'
> DateTime.strptime("1357106400000", "%Q")
=> #<DateTime: 2013-01-02T06:00:00+00:00 ((2456295j,21600s,0n),+0s,2299161j)>
于 2013-01-06T23:20:56.353 に答える
1

エポックからのミリ秒単位の時間が得られたと思います。探している関数はTime#atです。ただし、呼び出す前に秒単位でダウンコンバートする必要があります。例えば:

[holt@Michaela ~]$ irb
irb(main):001:0> Time.at(1357106400000)
=> Wed Dec 28 00:00:00 +0000 44974
irb(main):002:0> Time.at(1357106400000 / 1000)
=> Wed Jan 02 06:00:00 +0000 2013
irb(main):003:0>

あなたが思っていた正確な日ではありませんが、おそらく正しいでしょう。それが役立つことを願っています!

于 2013-01-06T23:22:29.143 に答える