Java 简化格式错误
我必须在sqlite数据库中输入日期。我得到错误,我不明白为什么。有人能帮我吗Java 简化格式错误,java,android,simpledateformat,Java,Android,Simpledateformat,我必须在sqlite数据库中输入日期。我得到错误,我不明白为什么。有人能帮我吗 SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" ); String strDate = sdf.format( dateAndTime ); cv.put(MyTable.DATE, strDate); 这就是错误: Caused by: java.lang.IllegalArgumentException at java.text.Dat
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" );
String strDate = sdf.format( dateAndTime );
cv.put(MyTable.DATE, strDate);
这就是错误:
Caused by: java.lang.IllegalArgumentException
at java.text.DateFormat.format(DateFormat.java:361)
at java.text.Format.format(Format.java:93)
Caused by: java.lang.IllegalArgumentException
at java.text.DateFormat.format(DateFormat.java:361)
at java.text.Format.format(Format.java:93)
这是我的日期选择器:
public void chooseDate(View v) {
new DatePickerDialog(Movimenti.this, d,
dateAndTime.get(Calendar.YEAR),
dateAndTime.get(Calendar.MONTH),
dateAndTime.get(Calendar.DAY_OF_MONTH))
.show();}
private void updateLabel() {
mDataScelta.setText(fmtDateAndTime
.format(dateAndTime.getTime()));
}
DatePickerDialog.OnDateSetListener d=new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
dateAndTime.set(Calendar.YEAR, year);
dateAndTime.set(Calendar.MONTH, monthOfYear);
dateAndTime.set(Calendar.DAY_OF_MONTH, dayOfMonth);
updateLabel();
}
};
format方法接受日期对象的实例。您的“dateAndTime”变量似乎没有保存日期对象的实例。请记住,
Calendar.getInstance()
将为您提供一个日期设置为当前时刻的日历
如果通过对话框获取日期并将其设置为
dateAndTime
,据我所知,这是一个日历对象,那么最好调用dateAndTime.getTime().getTime()
以毫秒为单位获取时间(第一个getTime()
返回日期对象,第二个返回从日期开始的毫秒时间),然后以毫秒为单位将日期传递给format
方法。这是错误:java.text.DateFormat.format(DateFormat.java:361)处的java.lang.IllegalArgumentException导致java.text.DateFormat.format(format.java:93)处的java.lang.IllegalArgumentException导致java.text.DateFormat.format(DateFormat.java:361)在java.text.Format.Format(Format.java:93)中,您应该编辑您的问题,而不是添加错误详细信息作为注释。我怀疑您的dateAnndTime
变量包含与指定格式不匹配的内容。我输入了我的DatePickerParentlydateAndTime
类型为日历
。日历类型为true。我如何改变它??DateFormat fmtDateAndTime=DateFormat.getDateInstance();Calendar dateAndTime=Calendar.getInstance();Date dateAndTime=Calendar.getInstance().getTime();