2018年6月29日金曜日

Java Dateをintに変換する方法。

日時情報は基本的にlongで扱います。
年月日時分秒ミリ秒までの情報を保持するのにそれだけの容量が必要なんです。

データベースの容量の関係で日時情報をintで保持したい場合のテクニックを紹介します。

例えば現在日時ならこんな感じでlongで取得することができます。
long now = new Date().getTime();

これを下のように1000で割り算してintにキャストすれば日時情報をintで扱えます。
int now = (int) new Date().getTime() / 1000;

元に戻す場合1000かければいいです。
 now * 1000;

あったまいいー。

ただしintにした時点でミリ秒の情報は切り捨てられてしまいます。

「Dateをintに変換」なんて、めった検索しないかもしれませんが、困っている人もいるかと思いまして。



0 件のコメント: