【问题标题】:SimpleDateFormat: how to correctly format a Date String containing letter T? [duplicate]SimpleDateFormat:如何正确格式化包含字母 T 的日期字符串? [复制]
【发布时间】:2017-05-19 09:11:32
【问题描述】:

我有以下String 代表Date

2017-01-30T19:00:00+0000

我想使用SimpleDateFormat 将其更改为日期对象。

这个字符串的正确格式是什么?

我已阅读 SimpleDateFormat API 并看不到任何与 T 相关的内容?

【问题讨论】:

  • 用单引号括起来:....'T'....。它只是字符串中的文字T
  • 但实际上,不要使用DateSimpleDateFormat。使用java.time 中的类,这些类并不糟糕,并且充满了不推荐使用的损坏方法。
  • 我仍然无法将其转换为日期对象?你能给出答案吗?
  • 您有一个ISO 8601 格式的日期字符串。看到这个问题:Converting ISO 8601-compliant String to java.util.Date

标签: java string date simpledateformat


【解决方案1】:

尝试使用:

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
String dateString = "2017-01-30T19:00:00+0000";
try {

    Date date = formatter.parse(dateString);
    System.out.println(date);

} catch (ParseException e) {
    //throw exception
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-14
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-08
    • 2013-02-21
    • 1970-01-01
    相关资源
    最近更新 更多