将输入的日期字符串解析成一个Date对象,然后格式化成带有时区的ISO 8601日期字符串:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class Main {
public static void main(String[] args) {
String originalDate = "2004-05-03T17:30:08";
String formattedDate = convertToISO8601(originalDate);
System.out.println("Converted Date: " + formattedDate);
}
public static String convertToISO8601(String originalDate) {
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX");
Date date;
try {
date = inputFormat.parse(originalDate);
return outputFormat.format(date);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
}