0

YouTube API を呼び出すと、次のタイムスタンプが返されます。

2012-11-13T18:38:30Z

現在の時刻と上記のタイムスタンプに基づいて「前の時刻」を計算する必要があります。したがって、上記のタイムスタンプと現在の時刻を使用すると、6 日前などを取得する必要があります。

Androidで変換する必要があるため、AndroidまたはJavaの回答が役立ちます。

前の時間を計算する関数があるようですが、最初に 2012-11-13T18:38:30Z をミリ秒または秒などに変換する必要があります

私の質問は、Java で、2012-11-13T18:38:30Z を、秒、日、またはその他のものに変換する方法です。

4

4 に答える 4

0

タイムスタンプを解析するには、このパターンを使用します。

yyyy-MM-dd'T'HH:mm:ssZ

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
java.util.Date parsedTimeStamp = format.parse("2012-11-13T18:38:30Z");
long videoTime = parsedTimeStamp.getTime();

最初の部分を説明しましたが、残念ながら時間がありません。次のステップは各自で行ってください: (後でコードを追加します) videoTimeビデオのミリ秒単位の時間を示します。を使用して現在の時刻を取得できます long systemTime = System.currentTimeMillis()/1000この 2 つを引き、その結果を変換して差を求めます。

Calender c1 = Calender.getInstanec().setTime(new Date(videoTime));
Calender c2 = Calender.getInstanec().setTime(new Date(systemTime));

この日付を使用して 2 つのカレンダーを作成し、Calender メソッドを使用して、日付と月の違いを見つけます。

于 2012-11-15T08:27:28.967 に答える
0

それをミリ秒に変換することはできません。にのみ指定されています。

于 2012-11-15T03:33:32.337 に答える
0

SimpleDateFormat クラスを使用して Date オブジェクトを作成し、次に getTime() を使用してミリ秒単位で取得します。

Google を試すと、たくさんの例が表示されます。

于 2012-11-15T02:31:52.397 に答える
0

Date から Long への変換ですか?

これは役立つかもしれません

http://www.roseindia.net/java/java-conversion/DateToLong.shtml

于 2012-11-15T02:33:24.813 に答える