选项1:使用java.util.Date/ Calendar:
首先,您需要将值解析为a Date,然后以您感兴趣的格式和时区重新格式化:
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss z",
Locale.US);
Date date = inputFormat.parse(inputText);
// Potentially use the default locale. This will use the local time zone already.
SimpleDateFormat outputFormat = new SimpleDateFormat("HH:mm", Locale.US);
String outputText = outputFormat.format(date);
Run Code Online (Sandbox Code Playgroud)
选项2:使用Joda Time
Joda Time是一个更好的Java日期/时间库.
DateTimeFormatter inputFormatter = DateTimeFormat
.forPattern("yyyy-MM-dd HH:mm:ss Z")
.withLocale(Locale.US);
DateTime parsed = inputFormatter.parseDateTime(inputText);
DateTimeFormatter outputFormatter = DateTimeFormat
.forPattern("HH:mm")
.withLocale(Locale.US)
.withZone(DateTimeZone.getDefault());
String outputText = outputFormatter.print(parsed);
Run Code Online (Sandbox Code Playgroud)
请注意,您应该只在需要时转换为/表示字符串表示.否则,根据您的使用情况使用最合适的类型 - 这就是Joda Time真正闪耀的地方.