weixin_42498200 2012-03-16 13:54
浏览 1685
已采纳

如何根据1900年1月1日到某一日的天数来获得某一日日期?

例如1900年1月1日 到 2010年11月18日 的总天数为 40498

已知 40498
如何计算出1900年1月1日后的40498天是2010年11月18日呢?

注:用java来实现

  • 写回答

4条回答

  • oxcow 2012-03-16 14:17
    关注

    [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里有详细的说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!