8

Android開発にタイムスパンのようなものがあるかどうかを知る必要がありますか?

C# には次のようなものがあり、私はそれを 2 つの方法で使用するのが好きです。

  1. タイムスパンを生成し、たとえば分を追加してから、スパン全体を表示します
  2. 2 つの DateTime 間のタイムスパンを生成します (アンドロイドの DateTime に相当するものは何ですか?)
4

6 に答える 6

5
public long addSeconds(long dt,int sec) //method to add seconds in time  
{

    Date Dt = new Date(dt);
    Calendar cal = new GregorianCalendar();

    SimpleDateFormat sdf = new SimpleDateFormat("MM-dd-yyyy HH:mm:ss");
    sdf.setCalendar(cal);
    cal.setTimeInMillis(Dt.getTime());
    cal.add(Calendar.SECOND, sec);
    return cal.getTime().getTime();

} 

日付と時刻を秒単位で渡すと、変更された時刻が返されます。

于 2012-04-13T08:40:47.430 に答える
4

残念ながら、TimeSpanJava でネイティブに使用できるクラスはまだありませんが、数行のコードでこれを実現できます。

Calendar startDate = getStartDate();
Calendar endDate = getEndDate();

long totalMillis = endDate.getTimeInMillis() - startDate.getTimeInMillis();
int seconds = (int) (totalMillis / 1000) % 60;
int minutes =  ((int)(totalMillis / 1000) / 60) % 60;
int hours = (int)(totalMillis / 1000) / 3600;
于 2012-04-13T07:08:16.120 に答える
3

AndroidにはDateUtilsがあり、正しい入力を与えると、メソッド「formatElapsedTime」が必要なことを行います。

于 2012-12-13T19:36:25.763 に答える
0

Calendar クラスを使用できます。

http://tutorials.jenkov.com/java-date-time/java-util-calendar.html

于 2012-04-13T07:05:01.210 に答える
0

Java の日付は厄介です。https://github.com/dlew/joda-time-androidをご覧ください

于 2014-08-27T11:19:24.247 に答える