在安卓中设置时,java日期不正确
我使用以下代码。当我按下编辑文本时,它会显示日历并设置日期
private DatePickerDialog.OnDateSetListener mDateSetListener =
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
updateDisplay();
}
};
private void updateDisplay()
{
int cmpYear ;
int cmpMonth ;
int cmpDay;
final Calendar c = Calendar.getInstance();
cmpYear = c.get(Calendar.YEAR);
cmpMonth = c.get(Calendar.MONTH);
cmpDay = c.get(Calendar.DAY_OF_MONTH);
if (cmpMonth == mMonth && cmpYear == mYear && cmpDay == mDay)
date.setText("Today");
else if (cmpMonth == mMonth && cmpYear == mYear && cmpDay == (mDay - 1))
date.setText("Yesterday");
else
{
date.setText(
new StringBuilder()
// Month is 0 based so add 1
.append(mDay).append("-")
.append(mMonth + 1).append("-")
.append(mYear).append(" "));
}
java.util.Date today = new java.util.Date();
long t = today.getTime();
java.sql.Date dt = new java.sql.Date(t);
dt.setYear(mYear);
dt.setMonth(mMonth);
dt.setDate(mDay);
transaction.transactionDateTime = dt;
}
//问题是,mYear,mMonth,mDay显示了1,32012的正确值,但当我在dt中设置它们时,dt将mYear保存为3079,而不是2012。 请告诉我如何解决这个日期问题
致意
共 (0) 个答案