[Java/Android] 자바/안드로이드 에서 시간 일수 계산 Date count

public static String dateCount(String date) throws ParseException {

    String dateAgo = null;

    String currentDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());

    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    Date startDate = formatter.parse(date);
    Date endDate = formatter.parse(currentDate);

    long diff = endDate.getTime() - startDate.getTime();
    long seconds = diff / 1000;
    long minutes = seconds / 60;
    long hours = minutes / 60;
    long days = hours / 24;
    long years = days / 365;

    if(seconds < 45){
        dateAgo = "방금 전";
    }else if(seconds < 90){
        dateAgo = "1분 전";
    }else if(minutes < 59){
        dateAgo = Math.round(minutes) + "분 전";
    }else if(minutes < 90){
        dateAgo = "1시간 전";
    }else if(hours < 23){
        dateAgo = Math.round(hours) + "시간 전";
    }else if(hours < 42){
        dateAgo = "1일 전";
    }else if(days < 30){
        dateAgo = Math.round(days) + "일 전";
    }else if(days < 45){
        dateAgo = "한달 전";
    }else if(days < 365){
        dateAgo = Math.round(days/30) + "달 전";
    }else if(years < 1.5){
        dateAgo = "1년 전";
    }else {
        dateAgo = Math.round(years) + "년 전";
    }

    return dateAgo;
}

일수 계산 이런식으로!! 응용해서 사용하면 됩니다..

댓글