在android中,我在解析时得到错误的日期。我提供22 Feb (Wednesday)
。为什么它给我错误的工作日(星期日)?请查看下面的屏幕截图,查看包含值的完整代码。
SimpleDateFormat format = new SimpleDateFormat("dd MMM (EEEE)");
try {
Date date = format.parse(strDate);
Calendar c = Calendar.getInstance();
c.setTime(date);
c.add(Calendar.DATE, 2);
String output = format.format(c.getTime());
tvDeliveryDate.setText(output);
tvDeliveryTime.setText(time);
deliveryDateTime = output + "," + time;
db.putString("deliver_date",output);
db.putString("deliver_time",time);
db.putString("deliver_date_time",output + ", " + time);
} catch (ParseException e) {
e.printStackTrace();
}
答案 0 :(得分:5)
您的日期格式没有年份组件,因此假定为1970年。 1970年,2月22日是星期天。
此解析操作使用日历生成
Date
。在解析之前清除所有日历的日期时间字段,并且日历时间字段的日历默认值用于任何缺少的日期时间信息。例如,如果解析操作没有给出年份值,则解析的Date
的年份值为1970,GregorianCalendar
。