原因:java.lang.IllegalArgumentException:EE中的错误模式字符“E”,dd-MMM-yyyy
我正在开发android应用程序,我正在使用simonvt datepicker库,因为它向后兼容,但我在开发人员控制台崩溃报告中看到有3个相同错误的报告,但我在我的设备中尝试了这一错误,所以这真的很奇怪 请支持这一点,为什么它如此奇怪,有时会出现java异常原因:java.lang.IllegalArgumentException:EE中的错误模式字符“E”,dd-MMM-yyyy,java,android,Java,Android,我正在开发android应用程序,我正在使用simonvt datepicker库,因为它向后兼容,但我在开发人员控制台崩溃报告中看到有3个相同错误的报告,但我在我的设备中尝试了这一错误,所以这真的很奇怪 请支持这一点,为什么它如此奇怪,有时会出现java异常 OnDateSetListener date = new OnDateSetListener() { private void updateLabel() { String myFormat = "EEE, d
OnDateSetListener date = new OnDateSetListener() {
private void updateLabel() {
String myFormat = "EEE, dd MMM"; // In which you need put here
String myDbFormat = "dd/MM/yyyy";
SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
SimpleDateFormat DBsdf = new SimpleDateFormat(myDbFormat, Locale.US);
Departure_date = sdf.format(myCalendar.getTime());
Departure_date_url = DBsdf.format(myCalendar.getTime());
Log.i("Departure_date", Departure_date);
date_btn.setText(sdf.format(myCalendar.getTime()));
}
@Override
public void onDateSet(net.simonvt.datepicker.DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
myCalendar.set(Calendar.YEAR, year);
myCalendar.set(Calendar.MONTH, monthOfYear);
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
updateLabel();
}
};
final net.simonvt.datepicker.DatePickerDialog dpd = new net.simonvt.datepicker.DatePickerDialog(
getActivity(), date, myCalendar.get(Calendar.YEAR),
myCalendar.get(Calendar.MONTH), myCalendar
.get(Calendar.DAY_OF_MONTH));
日志:
Caused by: java.lang.IllegalArgumentException: Bad pattern character 'E' in EE,dd MMM yyyy
at libcore.icu.ICU.getDateFormatOrder(ICU.java:165)
at android.text.format.DateFormat.getDateFormatOrder(DateFormat.java:388)
at net.simonvt.datepicker.DatePicker.reorderSpinners(DatePicker.java:515)
at net.simonvt.datepicker.DatePicker.<init>(DatePicker.java:284)
at net.simonvt.datepicker.DatePicker.<init>(DatePicker.java:149)
... 22 more
提前感谢基于EE中的日志错误模式字符“E”,dd-MMM-yyyy
我发生在EE,dd MMM yyyy。但是,您的代码有字符串myFormat=EEE,dd MMM;。你怎么了
"EEE, MMM d, ''yy" --> Wed, Jul 4, '01
您的代码显示字符串myFormat=EEE,dd MMM,而错误消息告诉我们EE,dd MMM yyy中的错误模式字符“E”。模式不匹配。您的代码不是最新的,或者错误在另一个地方。我假设后者是因为异常堆栈跟踪显示libcore.icu.icu.getDateFormatOrder方法。没有涉及SDF。@Seelenvirtuose有时会引发异常,原因是:java.lang.IllegalArgumentException:E中的错误模式字符“E”,MMM d,yyyy Cool。简单地忽略我明确告诉你的两种可能性是。。。有点不了解的特别是,当抛出一个仍然与代码不匹配的异常时。@Seelenvirtuose这真的很奇怪检查这些链接:&我没有得到你的答案,很抱歉,这个答案的问题是:可以用模式EE,dd-MMM-yyyy构造SimpleDataFormat。所以,不幸的是,这并不能回答这个问题。