如何在Java中将以下字符串转换为日期或日历对象?

use*_*949 7 java android

有一个像2011-03-09T03:02:10.823Z的字符串,如何将它转换为Java中的日期或日历对象?

Bal*_*usC 17

您可以使用SimpleDateFormat#parse()String日期格式模式转换为Date.

String string = "2011-03-09T03:02:10.823Z";
String pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
Date date = new SimpleDateFormat(pattern).parse(string);
System.out.println(date); // Wed Mar 09 03:02:10 BOT 2011
Run Code Online (Sandbox Code Playgroud)

有关所有模式字符的概述,请阅读SimpleDateFormatjavadoc的介绍性文本.


要进一步转换为Calendar,只需使用Calendar#setTime().

Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
// ...
Run Code Online (Sandbox Code Playgroud)