0

データベースから日時形式でフォーマットされた文字列を取得するアプリケーションがあり、特定のインスタンスで時刻のみを表示したいのですが、これをどのように実現しますか?

これは私がこれまでに試したことですが、解析できないエラーが発生します

public static final String DATE_TIME_FORMAT = "yyyy-MM-dd kk:mm:ss";
private static final String TIME_FORMAT = "kk:mm";

// ...

SimpleDateFormat TimeFormat = new SimpleDateFormat(TIME_FORMAT);
Date startTimer = null;
Date endTimer = null;

try
{
    String dateString = cursor.getString(6); 
    startTimer = TimeFormat.parse(dateString); 

    //Code for End Time
    String endDateString = cursor.getString(7); 
    endTimer = TimeFormat.parse(endDateString);

    totalBillable += endTimer.getTime() - startTimer.getTime();             
}
catch (ParseException e)
{
    Log.e("ReminderEditActivity", e.getMessage(), e);
}
4

2 に答える 2

0

必要なものを表す形式を作成し、時間が必要な場合にのみ使用します。

DateFormat df = new SimpleDateFormat("HH:mm:ss");
String onlyTime = df.format(new Date());

デモ: http: //ideone.com/AziDU

于 2012-08-15T17:20:18.067 に答える
0

Unparsable error異なる形式の文字列日付を解析しているため、取得していると思います。これを試して:

String dateString = cursor.getString(6); 
startTimer = TimeFormat.parse(dateString.substring(11, 16)); 

String endDateString = cursor.getString(7); 
endTimer = TimeFormat.parse(endDateString.substring(11, 16));

うまくいけば、このsubstring()方法で、kk:mm日付形式を取得できます。

于 2012-08-15T18:25:08.193 に答える