1

次の形式でクラスに入る時間(文字列)がある場合

2013-01-25T07:31:51.00Z

それを長いものにするにはどうすればよいですか?

DateFormat にどの形式を入れるかさえわかりません。他に手がかりがある人はいますか?

DateFormat formatter = new SimpleDateFormat(" MMM yyyy HH:mm:ss z");

望ましい結果

long time = changeMe("2013-01-25T07:31:51.00Z");

System.out.print(time);

//012432423  <-- But only the actual long
4

2 に答える 2

6

フォーマットがあるようです。これを試して:

import javax.xml.bind.DatatypeConverter;

public long changeMe(String isoTimestamp) {
  final Calendar c = DatatypeConverter.parseDateTime(isoTimestamp);
  return c.getTimeInMillis();
}

ところで、必要に応じてオブジェクトをc.getTime()返します。Date

以下も参照してください。

于 2013-01-25T19:49:40.787 に答える
1

優れたjodatimeライブラリの使用:

DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
long time = fmt.parseDateTime("2013-01-25T07:31:51.00Z").getMillis();
于 2013-01-25T20:04:40.783 に答える