格式化错误无法将给定的对象格式化为日期



我有这样的代码:

private static final SimpleDateFormat SIMPLE_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");

现在,我尝试格式化检查一些字符串数据,

final String format = SIMPLE_DATE_FORMAT.format("2022-12-07T10:57:23.970Z");

我得到不能将给定对象格式化为日期的错误。这里的问题是什么,我如何解决它?

您的代码片段有两个问题:

  1. format方法将Date对象格式化为String。也许,你想使用parse方法将String对象转换为Date对象。
  2. 您传递的字符串与您传递的模式不兼容。模式中的Z要求传递一个时区。-0700就是一个有效的例子。SimpleDateFormat的javadoc中显示了一个示例;只要用yyyy-MM-dd'T'HH:mm:ss.SSSZ搜索。

最新更新