这几天一直在处理Java的日期问题,通常需要按要求生成日期的话,通常会用到util包中的Calendar类,再用Calendar的getTime()方法生成对应的Date,最后用SimpleDateFormat输出。
1. 获取当期日期、年份、月份
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
Calendar now = Calendar.getInstance();
System.out.println("Current Year is : " + now.get(Calendar.YEAR));
// month start from 0 to 11
System.out.println("Current Month is : " + (now.get(Calendar.MONTH) + 1));
System.out.println("Current Date is : " + now.get(Calendar.DATE));
}
}
2. 获取前一天、前一个月的日期
Calendar calendar = Calendar.getInstance();//此时打印它获取的是系统当前时间
calendar.add(Calendar.DATE, -1); //得到前一天
calendar.add(Calendar.MONTH, -1); //得到前一个月
String yestedayDate
= new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
//此时得到的字符串 是经过计算后转换生成的前一日(月)的日期
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH)+1; //输出前一月的时候要记得加1
3. 字符串转为日期格式
String date = "2010-02-01 23:59:59";
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd
hh:mm:ss");
try {
Date d = sf.parse(date);
System.out.println(sf.format(d));
} catch (ParseException e) {
e.printStackTrace();
}
本文深入探讨了使用Java处理日期的方法,包括获取当前日期、时间,计算前一天、前一个月的日期,以及如何将日期字符串转换为日期对象。详细介绍了Calendar类的应用及SimpleDateFormat的使用。
1657

被折叠的 条评论
为什么被折叠?



