/**
* 取当前月份第一天日期和最后一天日期 (yyyy-MM-dd)
* @return String
*/
public static String getMothByDay(String date){
String[] result = new String[2];
DateFormat df=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.setTime(parseDate(date, "yyyy-MM-dd"));
Calendar cpcalendar=(Calendar)calendar.clone();
cpcalendar.set(Calendar.DAY_OF_MONTH, 1);
result[0] = df.format(new Date(cpcalendar.getTimeInMillis()));
//System.out.println("本月第一天:"+df.format( new Date(cpcalendar.getTimeInMillis())));
cpcalendar.add(Calendar.MONTH, 1);
cpcalendar.add(Calendar.DATE, -1);
result[1] = df.format(new Date(cpcalendar.getTimeInMillis()));
//System.out.println("本月最后一天:"+df.format( new Date(cpcalendar.getTimeInMillis())));
return null;
}
/**
* 解析日期字符串至日期类型内容
* @param date 日期字符串
* @param format 与日期字符串格式匹配的格式
* @return 解析后返回的日期
*/
public static java.util.Date parseDate(String date, String format) {
try {
SimpleDateFormat formatter;
if (null == format)
throw new IllegalArgumentException("错误的日期格式");
formatter = new SimpleDateFormat(format);
ParsePosition pos = new ParsePosition(0);
return formatter.parse(date, pos);
} catch (Exception e) {
throw new IllegalArgumentException("错误的日期:" + date + " " + e);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String date ="2010-07-13";
DateFormat df=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.setTime(parseDate(date, "yyyy-MM-dd"));
Calendar cpcalendar=(Calendar)calendar.clone();
cpcalendar.set(Calendar.DAY_OF_MONTH, 1);
System.out.println("当前月第一天:"+df.format( new Date(cpcalendar.getTimeInMillis())));
cpcalendar.add(Calendar.MONTH, 1);
cpcalendar.add(Calendar.DATE, -1);
System.out.println("当前月最后一天:"+df.format( new Date(cpcalendar.getTimeInMillis())));
}