はい、JavaとJavascriptのDateに関する別の質問です。Javascriptの日付とjava.util.Dateのコンストラクタ引数
タイムゾーンは、Javaとブラウザ(Chrome)の両方でGMT + 4(モスクワ)です。
<script language="javascript">
var d = new Date(170798400000);
document.write(d);
</script>
は与える:日1975年6月1日00:00:00 GMT + 0400(ロシア標準時)
public class Test {
public static void main(String[] args) {
java.util.Date d = new java.util.Date(170798400000L); // the same epoch value!
System.out.println(d);
}
}
は与える:土5月31日23時00分○○秒MSK 1975
をした場合エポック値を2011年から2012年のようなものに変更します(ロシアで夏時間がキャンセルされた後)出力はOKです。タイムゾーンアップデータツールが正常に実行されました。
これはバグですか?これは文書化された機能ですか? YHYY-MM-dd HH:mm:SS程度のような書式設定と再解析以外の方法はありますか?のJavadocから
:
すなわちはDateオブジェクトを割り当て、「エポック」として知られている標準ベースの時間からのミリ秒の指定された数を表すために、それを初期化する(長い日付)
日1月1日、1970、00:00:00 GMT。
javascriptの参照から:
新しい日付(ミリ秒)
ミリ秒 - 1970年1月1日00:00:00(UNIXのエポック)からのミリ秒数を表す整数値。
これは「タイムゾーンの変更」と関連があるかもしれません。http://en.wikipedia.org/wiki/Moscow_Time –
これは間違いありません。それは、DateコンストラクタがJavaScriptでもう使用できないことを意味しますか? – ike3
そのうちの1人が正しい答えを出しているが、他の人が答えていない場合は、もう1つはバグを持っていると言うでしょう:-) Javaは正しいかJavaScriptですか?私はソートのJavaバージョンが正しい答えを与えることを期待していますが、それは単なる疑いです。 – Pointy