2016-03-23 10 views
0

Ich möchte iterativ Zeit um 3 Sekunden und die Ergebnisse in folgendem Format erhöhen:Wie iterativ hinzufügen Sekunden auf eine Datetime

1/2/2015 6:00:00 AM 
1/2/2015 6:00:03 AM 
1/2/2015 6:00:06 AM 
1/2/2015 6:00:09 AM 

Dies ist, wie ich es begann die Umsetzung:

SimpleDateFormat _sdf = new SimpleDateFormat("d/M/YYYY HH:mm:ss AM"); 
_time = "1/2/2015 6:00:00 AM"; 
Date date; 
for (int i=0; i<4; i++) { 
try { 
      date = _sdf.parse(_time); 
      Calendar calendar = GregorianCalendar.getInstance(); 
      calendar.setTime(date); 
      // how to add seconds ??? 
      // System.out.println(...); 
} catch (ParseException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
} 

}

+1

'calendar.add (Calendar.SECOND, 3);'? –

Antwort

3

Was ist damit?

calendar.add(Calendar.SECOND, 3); 

Für die Ausgabe:

String formattedDate = _sdf.format(calendar.getTime()); 
System.out.println(formattedDate); 
2

java.time

Ein anderer Weg ist die java.time Rahmen in Java gebaut 8 und höher. Siehe Tutorial.

Mit LocalDateTime:

String _time = "1/2/2015 6:00:09 AM"; 
    LocalDateTime dt = LocalDateTime.parse(_time, DateTimeFormatter.ofPattern("M/d/y H:m:s a")); 
    dt = dt.plusSeconds(3); // since LocalDateTime is an immutable date-time object 
    System.out.println(dt.toString()); 
Verwandte Themen