关于java中java.util.Date(急)
这里建议用Calendar来完成,因为Calendar可以对日期进行计算。
代码写的比较丑,你再调整调整,俺程序员做的不是很成功。
public static String getLastMonthDay(String data)
{
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");//设定日期
ParsePosition pos = new ParsePosition(0);
Calendar calendar=Calendar.getInstance();
calendar.setTime(formatter.parse(data,pos));
calendar.add(Calendar.MONTH, -1);//月份减1
int maxday=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);//得到当前月份的最大日期
calendar.set(Calendar.DAY_OF_MONTH, maxday);
return formatter.format(calendar.getTime());
}
public static void main(String[] args)
{
System.out.println(getLastMonthDay("2014-05-03"));
System.out.println(getLastMonthDay("2013-05-03"));
System.out.println(getLastMonthDay("2014-03-01"));
}
public static String lastMonthEnd(String date) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");//日期格式,建议修改为全局静态常量
Date d = null;
try {
d = df.parse(date);//得到时间
Calendar calendar = Calendar.getInstance();
calendar.setTime(d);//设置Calendar时间为传入的时间
calendar.set(Calendar.DATE, 1);//设置Calendar的日期为这个月1号
calendar.add(Calendar.DATE, -1);//设置日期减去一天,即上个月最后一天
return df.format(calendar.getTime());//返回指定格式字符串
} catch (ParseException e) {
}
return null;
}
public static void main(String[] args) {
System.out.println(monthBeginA("2014-07-15"));
}
}
2014-07-15 · 知道合伙人数码行家
public class DateTest{
public static void main(String[] args){
String date = getDate(new java.util.Date());
System.out.println("转换后:" + date);
}
private static String getDate(java.util.Date date){
return new java.text.SimpleDateFormat("yyyy-MM-dd").format(date);
}
}
import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang.time.DateFormatUtils;
import org.apache.commons.lang.time.DateUtils;
public class Test {
public static void main(String[] args) throws ParseException {
System.out.println("2014-01-02" + " -> " + getDate("2014-01-02"));
System.out.println("2014-02-02" + " -> " + getDate("2014-02-02"));
System.out.println("2014-03-02" + " -> " + getDate("2014-03-02"));
}
public static String getDate(String dateStr) throws ParseException {
Date date = DateUtils.parseDate(dateStr, new String[] { "yyyy-MM-dd" });
date = DateUtils.addMonths(date, -1);
Calendar cal = DateUtils.toCalendar(date);
int day = cal.getActualMaximum(Calendar.DATE);
return DateFormatUtils.format(cal, "yyyy-MM-" + day);
}
}