Java iso 8601通用日期时间格式

时间:2017-11-06 10:08:03

标签: java date datetime

我希望这个结果在日期时间:2008-10-31T15:07:38.6875000-05:00,请帮助我如何得到这个结果?

我正在使用以下代码,但无法获得所需的响应。

TimeZone tzone = TimeZone.getTimeZone("UTC");
DateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'"); 
String nowAsISO = dateformat.format(new Date());

1 个答案:

答案 0 :(得分:-1)

你是对的:

您的格式表达式缺少秒:ss,毫秒.SSS(许多S表示您想要多少位数)和Z时区标记没有'

在表达式中使用单引号'将从解析中排除其中包含的所有内容,因此你会将它打印成字符串。

TimeZone tzone = TimeZone.getTimeZone("UTC");
DateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSSSSSZ"); 
String nowAsISO = dateformat.format(new Date());

您可以看到每种可能的模式here