IT기술, 프로그래밍/Java
Java 일, 월, 년 차이 계산 방법
뱅노
2019. 6. 29. 23:50
가끔 개발을 하다보면 날짜의 일, 월, 년 차이를 계산 해야 할 때가 필요하다.
사실 어려운 것은 아니지만 막상 만들려고 하면 귀찮다.
여기 하나 sample 소스를 올려 놓겠다.
필요할 때 복사해서 사용하면 될 것 같다.
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestFollowMonth {
public static void main(String[] args) {
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
String toDateStr = "20190329";
String fromDateStr = "20200329";
try {
Date toDate = format.parse(toDateStr);
Date fromDate = format.parse(fromDateStr);
long baseDay = 24 * 60 * 60 * 1000; // 일
long baseMonth = baseDay * 30; // 월
long baseYear = baseMonth * 12; // 년
// from 일자와 to 일자의 시간 차이를 계산한다.
long calDate = fromDate.getTime() - toDate.getTime();
// from 일자와 to 일자의 시간 차 값을 하루기준으로 나눠 준다.
long diffDate = calDate / baseDay;
long diffMonth = calDate / baseMonth;
long diffYear = calDate / baseYear;
System.out.println("diffDate : " + diffDate + "일");
System.out.println("diffMonth : " + diffMonth + "월");
System.out.println("diffYear : " + diffYear + "년");
} catch (Exception e) {
// TODO: handle exception
}
}
}