我想用System.currentTimeMillis()获得当前年份和月份,我不想用java api里面提供好的格式化类,想自己计算出来年份和月份,只计算到天数,下面就不会写了,请高手指点一下。long millis = System.currentTimeMillis();
int seconds = (int)millis/1000;//当前秒数
int hours = (int)millis/1000/3600;//当前小时数
int days = (int)millis/1000/3600/24;//当前天数
int month = ???
int year = ???我只能获取当前的天数,却不能获取当前的年份和月份,请高手指点。

解决方案 »

  1.   


    Date d = new Date(System.currentTimeMillis());
    System.out.println(d.getMonth() + 1);
    System.out.println(d.getYear()+1900);

      

  2.   

    currentTimeMillis
    Returns:
    the difference, measured in milliseconds, between the current time and midnight, January 1, 1970 UTC.int seconds = (int)millis/1000;//当前秒数
    int hours = (int)millis/1000/3600;//当前小时数
    int days = (int)millis/1000/3600/24;//当前天数你这个算出的不是当时的时间   是离1970年的秒数/小时/天
    单纯用currentTimeMillis很难算当前的时间的 你得减去前面所有的时间用Calendar的class吧  Date已经deprecated了
      

  3.   

    多谢前两位的提醒,我知道了,还是要用java中自带的格式化类。