例如1900年1月1日 到 2010年11月18日 的总天数为 40498
已知 40498
如何计算出1900年1月1日后的40498天是2010年11月18日呢?
注:用java来实现
例如1900年1月1日 到 2010年11月18日 的总天数为 40498
已知 40498
如何计算出1900年1月1日后的40498天是2010年11月18日呢?
注:用java来实现
[quote]
Java代码
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
cal.set(1900, 0, 1);
// Calendar cal2 = Calendar.getInstance();
// cal2.set(2010, 10, 18);
//
// long calm = cal.getTimeInMillis();
// long cal2m = cal2.getTimeInMillis();
// long re = (cal2m - calm)/1000/60/60/24;
// System.out.println(re);
cal.add(Calendar.DAY_OF_MONTH, 40498);
System.out.println(cal.get(Calendar.YEAR));
System.out.println(cal.get(Calendar.MONTH));
System.out.println(cal.get(Calendar.DAY_OF_MONTH));
}
LeeYee (中级程序员) 2012-03-16
[/quote]
更正下,cal.get(Calendar.MONTH)定义的月是从0开始的,也就是0代表一月。
[code="java"] public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
cal.set(1900, 0, 1);
cal.add(Calendar.DAY_OF_MONTH, 40498);
System.out.print(cal.get(Calendar.YEAR) + "年");
System.out.print(cal.get(Calendar.MONTH) + 1 + "月");
System.out.println(cal.get(Calendar.DAY_OF_MONTH) + "日");
}[/code]
其实你可以直接查看Calendar API,API里有详细的说明