SimpleDateFormat 无法解析的日期异常
Unparsable Date exception with SimpleDateFormat
我想从日期中获取毫秒数,但出现异常
java.text.ParseException: Unparseable date: "Thu Jul 25 10:56:29 GMT+02:00 2019"
这就是我到目前为止所做的:
我使用此模式从 DatePicker 中获取日期 "EEE MMM dd HH:mm:ss zzz yyyy",然后传递给方法以获取毫秒数:
long milliDate = parseIso8601(dateTimeCalendar.getTime().toString());
private static long parseIso8601(String value) {
try {
return new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US).parse(value).getTime();
} catch (ParseException ignored) {
return 0;
}
}
我遇到了异常,它是 returns0。我不知道出了什么问题。谢谢
您可以使用 DatePicker 和 TimePicker 的值创建日历对象:
Calendar calendar = Calendar.getInstance();
calendar.set(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(),
timePicker.getCurrentHour(), timePicker.getCurrentMinute(), 0);
long startTime = calendar.getTimeInMillis();
时区问题,zzz 需要时区名称,例如美国东部时间、格林威治标准时间或其他时间。
您案例的正确模式:
EEE MMM dd HH:mm:ss 'GMT'XXX yyyy
我想从日期中获取毫秒数,但出现异常
java.text.ParseException: Unparseable date: "Thu Jul 25 10:56:29 GMT+02:00 2019"
这就是我到目前为止所做的:
我使用此模式从 DatePicker 中获取日期 "EEE MMM dd HH:mm:ss zzz yyyy",然后传递给方法以获取毫秒数:
long milliDate = parseIso8601(dateTimeCalendar.getTime().toString());
private static long parseIso8601(String value) {
try {
return new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US).parse(value).getTime();
} catch (ParseException ignored) {
return 0;
}
}
我遇到了异常,它是 returns0。我不知道出了什么问题。谢谢
您可以使用 DatePicker 和 TimePicker 的值创建日历对象:
Calendar calendar = Calendar.getInstance();
calendar.set(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(),
timePicker.getCurrentHour(), timePicker.getCurrentMinute(), 0);
long startTime = calendar.getTimeInMillis();
时区问题,zzz 需要时区名称,例如美国东部时间、格林威治标准时间或其他时间。
您案例的正确模式:
EEE MMM dd HH:mm:ss 'GMT'XXX yyyy