1.获取指定的时间的上一年,上个月,上一天
String aa="2016/10/12";
Calendar c = Calendar.getInstance();
DateFormat df = new SimpleDateFormat("yyyy/MM/dd");
c.setTime(new Date(aa));
c.add(Calendar.MONTH, +1);//+1是下一个月,-1是上一个月
c.add(Calendar.YEAR, +1);//+1是下一年,-1是上一年
c.add(Calendar.DATE, +1);//+1是明天,-1是昨天
Date date = c.getTime();
String new_date = df.format(date);
System.out.println("日期:"+new_date);
2.比较string日期的大小
//比较string日期的大小
String d1 = "2014/02/10";
String d2 = "2014/02/11";
StringBuilder sb_start=new StringBuilder(d1);
StringBuilder sb_end=new StringBuilder(d2);
int num=String.valueOf(sb_start).compareTo(String.valueOf(sb_end));
System.out.println(d1.compareTo(d2));
if(num>0){
System.out.println("no");
}else{
System.out.println("yes");
}
输出:yes
3.获取两个日期相差的月数
//获取两个日期相差的月数
String start = "2013-02";
String end = "2013-04";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Calendar c_end = Calendar.getInstance();
Calendar c_start = Calendar.getInstance();
try {
c_end.setTime(sdf.parse(String.valueOf(end)));
c_start.setTime(sdf.parse(String.valueOf(start)));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int year1 = c_end.get(Calendar.YEAR);
int month1 = c_end.get(Calendar.MONTH);
int year2 = c_start.get(Calendar.YEAR);
int month2 = c_start.get(Calendar.MONTH);
int result_mon;
if(year1 == year2) {
result_mon = month1 - month2;
} else {
result_mon = 12*(year1 - year2) + month1 - month2;
}
System.out.println("月数:"+result_mon);
输出:月数:2
4.获取当前的日期
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
String dateNowStr = sdf.format(d);
System.out.println("当前的日期:" + dateNowStr);
输出:当前的日期:2017/02/06
5.获取当前的时间戳 10位
long time1=Long.parseLong(String.valueOf(System.currentTimeMillis()).toString().substring(0,10));
System.out.println(""+time1);