JavaDateクラスを使用していくつかの日付をフォーマットしようとしています。以前の計算で得た長い値がいくつかあります。日付のフォーマットを開始する前に、longのリストがあります。それらは次のとおりです。
-12345
0
12345
私はこのようないくつかの基本的なフォーマットを行います...
DateFormat df = new SimpleDateFormat("dd/MMM/yyyy HH:mm:ss");
String formattedDate = df.format(new Date(dateNumber.longValue()));
Javaは1970年の初めをベースとして使用しているので、私の期待される出力は次のようになります。
31/Dec/1969 23:59:47
01/Jan/1970 00:00:00
01/Jan/1970 00:00:12
しかし、私が実際に得ている出力は
31/Dec/1969 18:59:47
31/Dec/1969 19:00:00
31/Dec/1969 19:00:12
12月31日と1月1日の間で分割されるのではなく、なぜそれらがすべて12月31日になるのか、少し混乱しています。リストの2番目の2つの数字が正であるため、日付が以前の日付になる理由がわかりません。 1970年。誰かが基本的なJavaライブラリを使用してこれを手伝ってくれるなら、私はそれを大いに感謝します。