두 날짜가 있습니다.다른 형식의 두 날짜 개체 비교
첫 번째 날짜는 시스템 시간입니다. 두 번째 날짜는 뉴스 기사와 관련이 있으며 기사가 만료되면 end_time이라고합니다.
메신저를 사용하여 시스템 시간이 end_time을 초과하면 문서가 실제로 만료되는지 테스트합니다. 금 11월 4일 오스트레일리아 동부 표준시 13시 49분 0초 2016
SYSTEMTIME : 내가 프로그램을 실행하면
String searchstring = poriginal;
//make objects to be compared
Date parsed_system_time=null;
Date parsed_end_time=null;
//generate a current time object
GenerateSimpleTime current_time = new GenerateSimpleTime();
current_time.setSystem_time_snapshot();
String system_time = current_time.getSystem_time_snapshot();
//set up the SimpleDateFormat to be used for parsing the strings into objects for comparison
//parsing the date format e.g : 04:11:2016 11:34 AM
SimpleDateFormat sdf = new SimpleDateFormat("dd:MM:yyyy hh:mm");
try{
System.out.println("Trying to parse system time: \n");
parsed_system_time = sdf.parse(system_time);
}
catch(ParseException e)
{
System.out.println("Couldnt parse system time...\n");
e.printStackTrace();
}
SimpleDateFormat end_time_sdf = new SimpleDateFormat("dd MMMM, yyyy hh:mm a");
try {
parsed_end_time = end_time_sdf.parse(end_date);
} catch (ParseException e) {
System.out.println("Couldnt parse end_date...\n");
e.printStackTrace();
}
while(parsed_system_time.before(parsed_end_time))
{
current_time.setSystem_time_snapshot();
try {
system_time = current_time.getSystem_time_snapshot();
parsed_system_time = sdf.parse(system_time);
System.out.println("endtime is: "+ parsed_end_time+"\n");
} catch (ParseException e) {
System.out.println("Couldnt parse current_time.getSystem_time_snapshot()...\n");
e.printStackTrace();
}
//System.out.println("system time is: \n");
}
는 날짜는 다음과 같은 형식으로
ENDTIME 있습니다 : 다음과 같이
내 코드입니다 : 04 : 11 : 2016 1:52 PM
두 날짜가 다른 형식 인 경우 비교할 때 문제가있는 경우이 문제가 발생합니다. 그것은 중요하지 않아야합니까?
테스트를 실행하면 프로그램이 계속 실행되어 무기한 실행되어 시스템 시간이 종료 시간보다 길 때 감지하지 못합니다.
setSystem_time_snapshot()는 다음을 수행합니다
String pattern= "dd:MM:YYY h:mm a";
SimpleDateFormat simpletime = new SimpleDateFormat(pattern);
system_time_snapshot = simpletime.format(new Date());
System.out.println("system time snapshop is "+system_time_snapshot+"\n");
내가이 혼란을 정리하고 올바르게 작동 얻을 어떤 아이디어?
안녕하세요 @skaryWombat 귀하의 의견에 감사드립니다. 나는 당신의 제안을 시도했지만 그 문제를 해결하지 못했습니다. – tarquin
정확히 어떤 문제가 발생합니까? 예외가 발생합니까? –
예외가 발생하지 않고 while 루프가 종료되지 않습니다. 시스템 시간 스냅 샷은 04 : 11 : 2016 2:23 PM endtime : Far Nov 04 14:22:00 AEST 2016 – tarquin