Swing zu einem Datum Tage addieren/subtrahieren

skrobi

Mitglied
Hallo,

ich möchte zu irgendeinem Datum (nicht aktuellem Maschinendatum) Tage hinzuaddieren bzw.
davon subtrahieren. Nachfolgende Methode habe ich im Internet gefunden, sie funktioniert,
aber geht nur vom aktuellen Maschinendatum i.v.F. 20220127 aus.

Frage:
wie, wo, was muss ich ändern, damit ich
1) irgendein "NICHT-aktuelles Maschinendatum ( z.B. 25.02.2020) eingeben kann
2) Datumsübergabe bzw. Rückgabe in der Form "TT.MM.JHJJ" erfolgen

Gruss und Dank
skrobi


Java:
package versuch07;
import java.time.LocalDateTime;
public class Versuch07 {
    public static void main(String[] args) {
        LocalDateTime today = LocalDateTime.now();        //Ausgangsdatum
        LocalDateTime tomorrow = today.plusDays(5);       //x Tage addieren
        LocalDateTime yesterday = today.minusDays(5);     //x Tage subtrahieren
        
        System.out.println("Ausgangsdatum     :  "+today);
        System.out.println("Tage addieren     :  "+tomorrow);     
        System.out.println("Tage subtrahieren :  "+yesterday);         
    }
}

//ERGEBNIS:
//Ausgangsdatum     :  2022-01-27T15:32:19.345854600
//Tage addieren        :  2022-02-01T15:32:19.345854600
//Tage subtrahieren :  2022-01-22T15:32:19.345854600
 
1. Datum ohne Zeitzone = LocalDate, Datum + Uhrzeit ohne Zeitzone = LocalDateTime
2. Fürs Format gibt es DateTimeFormatter.

Java:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class Test {
    public static void main(String[] args) {
        String inputDate = "21.12.2021";
        DateTimeFormatter format = DateTimeFormatter.ofPattern("dd.MM.yyyy");
        LocalDate firstDate = LocalDate.parse(inputDate, format);
        LocalDate secondDate = firstDate.plusDays(3);
        String outputDate = secondDate.format(format);
        System.out.println("Weihnachten war am " + outputDate);
    }
}
 
1. Datum ohne Zeitzone = LocalDate, Datum + Uhrzeit ohne Zeitzone = LocalDateTime
2. Fürs Format gibt es DateTimeFormatter.

Java:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class Test {
    public static void main(String[] args) {
        String inputDate = "21.12.2021";
        DateTimeFormatter format = DateTimeFormatter.ofPattern("dd.MM.yyyy");
        LocalDate firstDate = LocalDate.parse(inputDate, format);
        LocalDate secondDate = firstDate.plusDays(3);
        String outputDate = secondDate.format(format);
        System.out.println("Weihnachten war am " + outputDate);
    }
}
Vielen Dank für die Unterstützung. Habe die Anwendung getestet, sie funktionierte einwandfrei, genau das was ich wollte.
Gruss skrobi
 
*/
package GregoranCalender;

import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.TimeZone;
import static java.util.TimeZone.getTimeZone;
import javax.swing.SwingUtilities;

/**
*
* @author peter
*/
public class GregorianCalender {

public static void main (String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
GregorianCalender gc = new GregorianCalender();
}
});
}
private TimeZone timeZone;

public GregorianCalender () { //int gc) {
GregorianCalendar gc = new GregorianCalendar(2022, 1, 26, 17, 26, 17);
gc = new GregorianCalendar(TimeZone.getTimeZone("EUROPE/Copenhagen"));
gc = new GregorianCalendar(TimeZone,getTimeZone("GMT+1"));
gc.add(Calendar.DATE, 1);

System.out.println(gc.getTime());
}
}
 

Neue Themen


Zurück
Oben