Datumsauswertung nach der Bankmethode
Hallo Zusammen,
ich würde gerne ein Programm schreiben, welches mir erlaubt eine Differenz zwischen zwei Datums auszugeben. Das Problem dabei ist, dass diese Ausgabe nach der Bankmethode erfolgen muss. D.H. es gibt nur 30 Tage im Monat.
Weiterhin brauche ich diese Differenz auch nur in Tagen. D.H. ich gebe das datum ein von-bis und bekomme nur die Tage heraus.
Da ich im Moment im Internet noch nichts brauchbares gefunden habe, wollte ich gerne Fragen ob solch ein Vorhaben in Java überhaupt möglich wäre bzw. ohne großen Aufwand realisierbar ist?
Ich Danke euch im voraus für eure Hilfe!
Viele Grüße
Pawlos
ich würde gerne ein Programm schreiben, welches mir erlaubt eine Differenz zwischen zwei Datums auszugeben. Das Problem dabei ist, dass diese Ausgabe nach der Bankmethode erfolgen muss. D.H. es gibt nur 30 Tage im Monat.
Weiterhin brauche ich diese Differenz auch nur in Tagen. D.H. ich gebe das datum ein von-bis und bekomme nur die Tage heraus.
Da ich im Moment im Internet noch nichts brauchbares gefunden habe, wollte ich gerne Fragen ob solch ein Vorhaben in Java überhaupt möglich wäre bzw. ohne großen Aufwand realisierbar ist?
Ich Danke euch im voraus für eure Hilfe!
Viele Grüße
Pawlos
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 78278
Url: https://administrator.de/forum/datumsauswertung-nach-der-bankmethode-78278.html
Ausgedruckt am: 23.12.2024 um 18:12 Uhr
3 Kommentare
Neuester Kommentar
Das ist in jeder Programmiersprache möglich und der Aufwand hält sich auch in Grenzen.
Die Version geht jetzt davon aus, das Du bei 01.01.2000 bis 02.01.2000 auch einen Tag herausbekommen willst. Wenn Du die Tage exklusive die Grenztage oder komplett inklusive der Grenztage haben willst, muß man halt noch 1 Tag abziehen oder dazuaddieren, wobei bei exklusive der Grenztage noch die Frage wäre, was man macht, wenn derselbe Tag bei von und bei bis eingegeben wurde.
Tage = (Jahr1 - Jahr2) * 360;
Tage += (Monat1 - Monat2) * 30;
if(Tag1>30) Tag1=30; // Tage größer 31 gibts bei der Bank nicht
if(Tag2>30) Tag2=30; // Tage größer 31 gibts bei der Bank nicht
Tage += Tag1 - Tag2;
Tage = java.lang.Math.abs(Tage); // (damit immer positive Werte rauskommen)