【问题标题】:Unable to convert String to date, Unparseable date exception无法将字符串转换为日期,无法解析的日期异常
【发布时间】:2015-09-17 06:22:36
【问题描述】:

我将dateInString 传递为“2015-07-30T14:30:00-04:00”。但 它在扔

java.text.ParseException:无法解析的日期: “2015-07-30T14:30:00-04:00”(偏移量 0)

这里是示例代码:

        private Date convertStringToDate(String dateInString){
        if(dateInString!=null){
            Date convertedDate=null;
            SimpleDateFormat formatter = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy");
            TimeZone timeZone = TimeZone.getDefault();
            formatter.setTimeZone(timeZone);
            try {
                convertedDate = formatter.parse(dateInString);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return convertedDate;
        }
        else
            return null;
        }

【问题讨论】:

  • SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy") 是否等于“2015-07-30T14:30:00-04:00”?
  • 请阅读codeblog.jonskeet.uk/2015/05/05/… - 请注意,您传递给SimpleDateConstructor 的字符串不仅仅是随机垃圾...
  • @cwfei:这并不是真正的复制品。就“我在没有阅读文档或检查我传入的模式的情况下使用 SimpleDateFormat”而言,这是其他各种问题的重复,但这个问题更多的是“我根本不知道 SimpleDateFormat”。
  • @JonSkeet 你有多准确,和平
  • 感谢大家为我指明正确的方向。我将阅读有关 SimpleDateFormat 的更多信息。

标签: java android datetime exception


【解决方案1】:

我已经解决了。这是日期格式 -

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");

感谢大家的宝贵时间:-)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多