【问题标题】:java.lang.NumberFormatException: Invalid date/time format: 2016-01-21T00:57:03.126+0500java.lang.NumberFormatException:无效的日期/时间格式:2016-01-21T00:57:03.126+0500
【发布时间】:2016-04-25 12:03:12
【问题描述】:

我正在使用这种方法设置日期和时间...

calendar.set(year,monthOfYear,dayOfMonth);
calendar.set(Calendar.HOUR_OF_DAY,hourOfDay);
calendar.set(Calendar.MINUTE,minute);

在获取DateTimeStamp 并设置Event 对象时,我遇到了错误

NumberFormatException:无效的日期/时间格式:

String format = "yyyy-MM-dd'T'HH:mm:ss.SSSZ";
SimpleDateFormat sdf = new SimpleDateFormat(format, Locale.US);
DateTime startDateTime = new DateTime(sdf.format(calendar.getTime()));//This Line causing it 
EventDateTime start = new EventDateTime().setDateTime(startDateTime).setTimeZone(calendar.getTimeZone().toString());
event.setStart(start);

【问题讨论】:

  • 跳过字符串格式,只使用来自Calendar 实例的Date 实例化DateTime。即new DateTime(calendar.getTime())

标签: android datetime datetimepicker simpledateformat datetime-format


【解决方案1】:

问题已通过使用“yyyy-MM-dd'T'HH:mm:ss'Z'”这种格式解决。 由于 DateTime 接受 RFC3339,其中区域 ('z') 用引号括起来

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-28
    • 2013-05-20
    • 1970-01-01
    • 2020-07-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多