如何将java.sql.Date对象转换为公历日历?
2022-09-02 02:58:46
我以为我可以使用采用年,月和日的构造函数创建一个GregorianCalendar
,但是我无法可靠地从java.sql.Date
类的实例中获取这些字段。从中获取这些值的方法已弃用,以下代码说明了无法使用它们的原因:java.sql.Date
import java.sql.Date;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class DateTester {
public static void main(String[] args) {
Date date = Date.valueOf("2011-12-25");
System.out.println("Year: " + date.getYear());
System.out.println("Month: " + date.getMonth());
System.out.println("Day: " + date.getDate());
System.out.println(date);
Calendar cal = new GregorianCalendar(date.getYear(), date.getMonth(), date.getDate());
System.out.println(cal.getTime());
}
}
下面是输出,显示月份和年份未从 已弃用的 和 方法中正确返回:getYear()
getMonth()
Date
年份: 111
月: 11
天: 25
2011-12-25
星期四 12 月 25 00:00:00 EST 111
由于我无法使用上面尝试过的构造函数,并且没有只采用的构造函数,如何将对象转换为?GregorianCalendar
Date
java.sql.Date
GregorianCalendar