"Cannot format given Object as a Date" 格式化时出错 google api 客户端 DateTime

"Cannot format given Object as a Date" error when formatting google api client DateTime

我需要将 google api 客户端包的 DateTime 对象转换为简单的字符串。应该很容易,但我是 android.

的新手
com.google.api.client.util.DateTime  date = new com.google.api.client.util.DateTime(System.currentTimeMillis());
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
String dateAsISOString = df.format(date);

这给出了以下异常:

java.lang.IllegalArgumentException: Cannot format given Object as a Date

我猜 DateFormat 也应该来自某个 google 包,但找不到位置。

您收到错误是因为您试图将 SimpleDateFormat 与错误的 Date 对象一起使用。

如果您想使用 SimpleDateFormat,您应该使用 java.util.Date

这是更正后的代码片段:

java.util.Date date = new java.util.Date(System.currentTimeMillis());
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
String dateAsISOString = df.format(date);
System.out.println(dateAsISOString);