2013-09-03 3 views
0

두 개의 hh : mm 문자열이 있는데 둘 사이를 비교하려고합니다.문자열이 hh : mm 형식 인 경우

내 말은, 나는 그것들을 더하고 빼기를 원할 것입니다. 현재 시간과 "15:00"과 같은 문자열이있는 문자열이 있습니다. 나는 두 문자열 사이에 몇 분이 있는지 알기를 원합니다. 결과는 빼기를 수행하면됩니다. 그게 가능합니까?

+2

예 가능합니다. 그러나 이것으로 당신을 도울 수있는 많은 자원이 그물에 있습니다. SO는 Q & A 사이트입니다. 자습서 요청이 없습니다. 죄송합니다. 무례하다면 진실입니다. – MarsOne

+0

[날짜] (http://docs.oracle.com/javase/6/docs/api/java/util/Date.html) 및 [SimpleDateFormat] (http : /download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html) – rocketboy

+0

분으로 변환 한 다음 쉽게 덧셈/뺄셈/비교를 할 수 있습니다. – NeplatnyUdaj

답변

0

이것은 당신이 시작하는 것입니다 .. 마세요 SimpleDateFormat를 사용하여 분석 할 수 다음 필요한 comparisions이/추가합니까/

String time1 = "15:00"; 
String time2 = "16:00"; 

DateFormat sdf = new SimpleDateFormat("hh:mm"); 
Date date1 = sdf.parse(time1); 
Date date2 = sdf.parse(time2); 

long milliSecondsDiff = date1.getTime() - date2.getTime(); //in milliseconds 
int seconds = milliSecondsDiff/1000; //seconds 
int minutes = seconds/60; //minutes 
+1

'a.getTime() - b를 사용할 수 있습니다. getTime()'을 사용하여 밀리 초 단위로 차이를 가져옵니다. –

+0

@ PeterLawrey 절대적으로 .. OP 게시물 일부 코드 .. 전에 그것을 포기하고 싶지 않았다 감사합니다. – Krishna

3

을 빼기 두 문자열 &에 대해 다음, 다음 Date에서 getTime() 방법을 사용 클래스를 사용하여 밀리 초 단위의 차이를 가져옵니다.

DateFormat f = new SimpleDateFormat("hh:mm"); 
Date d1 = f.parse(s1); 
Date d2 = f.parse(s2); 
long difference = d1.getTime() - d2.getTime(); // milliseconds 
0

이에 대한 joda의 날짜를 사용할 수 있습니다

public static void main(String[] args) { 

    DateTimeFormatter formatter = DateTimeFormat.forPattern("HH:mm"); 
    DateTime first = formatter.parseDateTime("15:00"); 
    DateTime second = formatter.parseDateTime("15:49"); 

    Interval interval = new Interval(first, second); 
    System.err.println(interval.toDuration().getStandardMinutes()); 
} 

이 기간은 또한 당신이 당신에게 2,940를 줄 것 getStandardSeconds 같은 다른 깔끔한 방법()를 제공하여 살펴 here

되세요 케이스.

관련 문제