1

この形式のUTC時刻があります。2013-03-04T14:37:15これを現地時間に変換してから形式に変換するにはどうすればよいですかone minute ago

私は最初にこれを試し、時間をローカル形式に変換しました。

private String getDate(String date) {
        Date fDate = null;
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
        try {
            fDate = simpleDateFormat.parse(date);
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
return fDate.toString();
    }

ただし、上記の関数は、解析不能な日付を示す例外をスローします。

4

2 に答える 2

4

T取得する解析例外は、date( )に余分なものがあるためです2013-03-04T14:37:15

その余分な「T」を削除して、現在の日付形式で日付を解析することができます。

または、で解析する必要がある場合はT、リテラルTも解析するように形式を変更します。

new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
于 2013-03-19T16:41:57.227 に答える
3

DateUtils.getRelativeTimeSpanString ()(DateUtilsの同じ名前の1つのメソッド)を確認します。次のようになります:

Date fDate = null;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
fDate = simpleDateFormat.parse(date);
return DateUtils.getRelativeTimeSpanString(context, System.currentTimeMillis()-fDate.getTime())'
于 2013-03-19T16:45:48.423 に答える