你好我是
android新手.如何获取android中两个日期之间的所有日期.
例如.我有两个字符串.
String first =“2012-07-15”;
String second =“2012-07-21”;
我转换并从这个字符串中获取日期.
DateFormat df1 = new SimpleDateFormat(“yyyy-MM-dd”);
DateFormat df2 = new SimpleDateFormat(“MMM dd”);
String mydate = df2.format(df1
.parse(第一));
这样我从第一个和第二个字符串得到两个日期.
现在我还显示这两个日期之间的所有日期.任何人都可以帮我找到这个.
解决方法
最好不要在日期计算中使用任何硬编码值.我们可以依靠
java Calendar类方法来完成这个任务
看到代码
private static List<Date> getDates(String dateString1,String dateString2) { ArrayList<Date> dates = new ArrayList<Date>(); DateFormat df1 = new SimpleDateFormat("yyyy-MM-dd"); Date date1 = null; Date date2 = null; try { date1 = df1 .parse(dateString1); date2 = df1 .parse(dateString2); } catch (ParseException e) { e.printStackTrace(); } Calendar cal1 = Calendar.getInstance(); cal1.setTime(date1); Calendar cal2 = Calendar.getInstance(); cal2.setTime(date2); while(!cal1.after(cal2)) { dates.add(cal1.getTime()); cal1.add(Calendar.DATE,1); } return dates; }
并使用如下
List<Date> dates = getDates("2012-02-01","2012-03-01"); for(Date date:dates) System.out.println(date);