============================================= 비교 SimpleDateFormat format = new SimpleDateFormat ("yyyy-MM-dd"); Date day1 = null; Date day2 = null; try { day1 = format.parse("2012-12-16"); day2 = format.parse("2012-12-17"); }catch(ParseException e){ e.prinStackTrace(); } int compare = day1.compareTo(day2); if(compare > 0) { System.out.println("day1 > day2"); ============================================= ============================================= 더하기 Date date = new Date(); System.out.println(date); // 포맷변경 ( 년월일 시분초) SimpleDateFormat sdformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // Java 시간 더하기 Calendar cal = Calendar.getInstance(); cal.setTime(date); // 10분 더하기 cal.add(Calendar.MINUTE, 10); ============================================= ============================================= 일 수 차이 구하기 public void calDateBetweenAandB() { String date1 = "2016-09-21"; String date2 = "2016-09-10"; try{ // String Type을 Date Type으로 캐스팅하면서 생기는 예외로 인해 여기서 예외처리 해주지 않으면 컴파일러에서 에러가 발생해서 컴파일을 할 수 없다. SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd"); // date1, date2 두 날짜를 parse()를 통해 Date형으로 변환. Date FirstDate = format.parse(date1); Date SecondDate = format.parse(date2); // Date로 변환된 두 날짜를 계산한 뒤 그 리턴값으로 long type 변수를 초기화 하고 있다. // 연산결과 -950400000. long type 으로 return 된다. long calDate = FirstDate.getTime() - SecondDate.getTime(); // Date.getTime() 은 해당날짜를 기준으로1970년 00:00:00 부터 몇 초가 흘렀는지를 반환해준다. // 이제 24*60*60*1000(각 시간값에 따른 차이점) 을 나눠주면 일수가 나온다. long calDateDays = calDate / ( 24*60*60*1000); calDateDays = Math.abs(calDateDays); System.out.println("두 날짜의 날짜 차이: "+calDateDays); } catch(ParseException e) { // 예외 처리 } } ============================================= 참고사이트 http://computersj.tistory.com/entry/JAVA-%EB%82%A0%EC%A7%9C-%EB%B9%84%EA%B5%90-date-compare - 날짜 비교 http://d4emon.tistory.com/60 - 날짜 더하기 http://highcode.tistory.com/5 - 일 수 차이 구하기4 안녕하세요 이번에는 자바에서 날짜 비교하는 방법에 대해 간단히 알려드리고자 합니다. 우선 SimpleDateFormat을 이용하여 원하는 형식으로 변환 후 비교를 합니다.
자 이렇게 compareTo를 이용하여 날짜를 비교합니다. 참고로 SimpleDateFormat 사용이 try catch 구문을 반드시 이용하여야 합니다. 이상입니다. 감사합니다. 공유하기 게시글 관리 구독하기배씨의 프로그래밍저작자표시
'프로그래밍 > 스프링[Spring]' 카테고리의 다른 글[스프링] 스프링 시큐리티 처음에만 로그인이 안 되는 현상[PreparedStatementCallback] (0)2019.06.27[스프링] log4J 처음 사용하기[xml 이용] (0)2019.06.18[스프링] 스프링에서 네이버 이메일을 이용한 Email 발송방법 (0)2019.05.07[Spring] 스프링 SpEL를 이용한 프로퍼티 설정 (0)2019.05.03[Spring] No adapter for handler 해결 하기[HTTP Status 500] (0)2019.05.02그만큼 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar;
// Java에서 두 날짜를 비교하는 프로그램 class Main { public static void main(String[] args) { String d1 = "10-20-2016"; String d2 = "10-12-2015";
String pattern = "MM-dd-yyyy"; SimpleDateFormat sdf = new SimpleDateFormat(pattern);
Calendar cal1 = Calendar.getInstance(); Calendar cal2 = Calendar.getInstance(); try { cal1.setTime(sdf.parse(d1)); cal2.setTime(sdf.parse(d2)); } catch (ParseException e) { e.printStackTrace(); }
if (cal1.after(cal2)) { System.out.printf("%s is after %s", d1, d2); } else if (cal1.before(cal2)) { System.out.printf("%s is before %s", d1, d2); } else if (cal1.equals(cal2)) { System.out.print("Both dates are equal"); } } } 다운로드 코드 실행 결과: 4. 사용 |