2012-05-09 24 views
0

JSONを使用してサーバーから戻されたタイムスタンプ文字列を解析するのに問題があります。私はHashMapからタイムスタンプを抽出し、ログにそれを表示するには、次のコードを使用しています:AndroidでのUnixタイムスタンプの解析に問題がある

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); 
Long time = Long.parseLong(event.get("time")); 
final Calendar cal = Calendar.getInstance(); 
cal.setTimeInMillis(time); 
String event_date = sdf.format(cal.getTime()); 
Log.v("Date", event_date); 

しかし、私は、このメソッドに渡し、すべてのタイムスタンプのためには、日付の1970年1月16日、タイムスタンプの例を思い出させます私が解析しようとしているのは2012年5月11日に対応する1336773600です。ここで間違っていることはわかりませんが、明らかに私はそうです。助言がありますか?

+0

使用している 'event'オブジェクトとは何ですか?実際、ミリ秒単位で時間を返すのではないでしょうか? – RivieraKid

答えて

7

ユノアのタイムスタンプは、エポックからの秒数です。 Javaはエポックからミリ秒を使用します。

これを調整するには、unixタイムスタンプに1000を掛けます。

+0

完璧に働いた、チャックノリスありがとう。 – SamRowley

1

試してみてください。

cal.setTimeInMillis(time * 1000); 

ミリ秒に秒を変換します。

関連する問題