EpochTime(エポックタイム)を変換する (Java編)

JavaでエポックタイムをDate型にしたり、Date型をエポックタイムに変換するTipsです。

EpochTime(エポックタイム)とは

そもそも、エポックタイムとは何でしょうか。

EpochTimeはUnixTimeとも呼ばれ、1970年1月1日00:00:00を基準にして、それから何秒たったかを数値にしています。

Javaで操作する場合には、long型が適切です。

Unixの世界では良く使われているので、このような呼ばれ方もするのですね。

JavaによるEpochTime⇔Date型の相互変換

では、早速、変換してみましょう。

Date型 → EpochTime

public static long getEpochTime(String strDate){
 
    Date lm = new Date(strDate);
    return lm.getTime();
 
}

EpochTime → Date型

public static String getDateFromEpoch(long epochtime){
 
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
    return sdf.format(new Date(epochtime*1000));
 
}
Point

EpochTimeの単位について一点、気をつけたいのは、「epochtime*1000」の部分です。

Epoctimeは、ミリ秒で表現される場合と、秒で表現される場合があります。 

1339066619のように、10桁で表現されている場合は、上記のように、1000を掛けて、ミリ秒に直してあげましょう。

元々ミリ秒の場合は、1000を掛けずにそのままで大丈夫です。