rechnen mit Datum!?

Status
Nicht offen für weitere Antworten.
P

Paul S. K.

Gast
wie kann ich eine tagesanzahl an hand von einem anfangsdatum und einem enddatum ermitteln!!
welchen datentyp muss das datum haben???!!!

HILFE!!

mfg
 

Nobody

Top Contributor
um den kalender nutzen zu können musst du "java.util.*;" importieren

Code:
GregorianCalendar cal = new GregorianCalendar();        //Kalender mit dem aktuellen Datum

     //Datum
     System.out.println(
       "Datum......: " +
       cal.get(Calendar.DATE) + "." +
       (cal.get(Calendar.MONTH)+1) + "." +
       cal.get(Calendar.YEAR)
     );
     //Zeit
     System.out.println(
       "Zeit.......: " +
       cal.get(Calendar.HOUR_OF_DAY) + ":" +
       cal.get(Calendar.MINUTE) + ":" +
       cal.get(Calendar.SECOND) + " (+" +
       cal.get(Calendar.MILLISECOND) + " ms)"
     );
        //Zeit, amerikanisch
     System.out.print(
       "Am.Zeit....: " +
       cal.get(Calendar.HOUR) + ":" +
       cal.get(Calendar.MINUTE) + ":" +
       cal.get(Calendar.SECOND)
     );
     value = cal.get(Calendar.AM_PM);
     if (value == cal.AM) {
       System.out.println(" AM");
     } else if (value == cal.PM) {
       System.out.println(" PM");
     }
     //Tag
     System.out.println(
       "Tag........: " +
       cal.get(Calendar.DAY_OF_YEAR) + ". im Jahr"
     );
     System.out.println(
       "             " +
       cal.get(Calendar.DAY_OF_MONTH) + ". im Monat"
     );
     //Woche
     System.out.println(
       "Woche......: " +
       cal.get(Calendar.WEEK_OF_YEAR) + ". im Jahr"
     );
     System.out.println(
       "             " +
       cal.get(Calendar.WEEK_OF_MONTH) + ". im Monat"
     );
     //Wochentag
     System.out.print(
       "Wochentag..: " +
       cal.get(Calendar.DAY_OF_WEEK_IN_MONTH) +
       ". "
     );
     value = cal.get(Calendar.DAY_OF_WEEK);
     if (value == cal.SUNDAY) {
       System.out.print("Sonntag");
     } else if (value == cal.MONDAY) {
       System.out.print("Montag");
     } else if (value == cal.TUESDAY) {
       System.out.print("Dienstag");
     } else if (value == cal.WEDNESDAY) {
       System.out.print("Mittwoch");
     } else if (value == cal.THURSDAY) {
       System.out.print("Donnerstag");
     } else if (value == cal.FRIDAY) {
       System.out.print("Freitag");
     } else if (value == cal.SATURDAY) {
       System.out.print("Samstag");
     } else {
       System.out.print("unbekannt");
     }
     System.out.println(" im Monat");
     //Zeitzone
     System.out.println(
       "Zeitzone...: " +
       cal.get(Calendar.ZONE_OFFSET)/3600000 +
       " Stunden"
     );
     System.out.println(
       "Sommerzeit.: " +
       cal.get(Calendar.DST_OFFSET)/3600000 +
       " Stunden"
     );

das ganze musst du halt anpassen. um eine differenz zu bestimmen weist du zb einer int variable den wert des tages/... zu und nimmst dabei einen start und einen end wert.

das ganze findest du auch nochmal im javabuch im kapitel 16.2
 
P

Paul

Gast
das ist ja sehr umständlich!!!
gibt es denn nicht sowas wei einen Datentyp Date oder so!
wo ich das komplette datum (19.09.03) verwalten kann und bei dem auch alles berücksichtigt ist wie schaltjahre und so!
oder muss man da alles selber programmieren was die berrechnungen angehen!

meine vorstellung war z.b:
ich hab zwei variablen mit denen ich das Datum einlesen kann!
Dat=12.02.03
Dat2=14.02.03
dann mach ich dat2-dat und ich erhalte 2 für die differenz von 2 tagen!
oder war das nur ein wunschgedanke!!???

mfg
 

Nobody

Top Contributor
du könntest den unterschied in wochen nehmen und dann mit 7 multiplizieren und die restlichen tage dazu addieren. ob das mit dem date geht weis ich nicht, hab bisher damit noch nichts gemacht.


könntest auch versuchen ALLE angaben in tage umzurechnen und dann voneinander abziehen
 

jptc.org

Bekanntes Mitglied
Leider ist das java.util.Date nicht sehr komfortabel, wenn es um Berechnungen geht! Am einfachsten ist es, wenn man sich jedes einzelne Daten als Millisekunden geben lässt (das kann java.util.Date) und die Millisekunden von einander subtrahiert. Das Ergebnis kann man dann leicht wieder in Tagen ausdrücken. Schaltjahre und ähnliche werden bei dieser Variante gleich mit berücksichtigt.

Karsten Voigt
http://www.java-performance-portal.org
 
P

Paul

Gast
gibt es sowas wie einen Datentyp Date überhaput?? Kenn das nur aus anderen Programmiersprachen, aber bei Java hab ich noch nix darüber gelesen!
 
G

Guest

Gast
wie komm ich an die millisekunden ran??? getTime() ist es ja nicht!!
über Date find ich nicht so die infos da Date ja anscheinend durch Calendar bzw. GregorianCalendar ersetzt wurde!!

mfg
Paul
 
P

Paul

Gast
die millisekunden von heute bzw. jetzt bekomme ich raus, aber was muss ich machen um z.b. die millisekunden vom 12.1203 zu bekommen und wie wandle ich die millisekunden in ein datum um ??????? :roll:
 

schalentier

Gesperrter Benutzer
Code:
Date d1 = new Date(2003,9,19);
Date d2 = new Date(2003,8,19);

Date diff = new Date(d1.getTime() - d2.getTime());
 
A

armitage

Gast
Um die Differenz in Tagen zu bekommen habe ich einmal eine Funktion geschrieben. Ich weiß nicht, ob sie ganz korrekt arbeitet, aber ich denke schon.

Code:
	private static int difDays(GregorianCalendar c1, GregorianCalendar c2)
	{
		c1=(GregorianCalendar)c1.clone();
		c2=(GregorianCalendar)c2.clone();
		
		c1=midnight(c1);
		c2=midnight(c2);
		
		if (c1.after(c2))
			return -1;
		if (!c1.after(c2) && !c1.before(c2))
			return 0;
		
		int ret_val=0;
		int step=1024;
		GregorianCalendar runner=c1;
		while (true)
		{
			runner.add(Calendar.DAY_OF_YEAR, step);
			ret_val+=step;
			if (!runner.before(c2))
			{
				if (step==1)
					return ret_val;
				else
				{
					runner.add(Calendar.DAY_OF_YEAR, -step);
					ret_val-=step;
					step=step/2;
				}
			}
		}
	}


	private static GregorianCalendar midnight(GregorianCalendar c)
	{
		c.set(Calendar.HOUR, 0);
		c.set(Calendar.MINUTE, 0);
		c.set(Calendar.SECOND, 0);
		c.set(Calendar.MILLISECOND, 0);
		return c;
	}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Mit Datum rechnen Java Basics - Anfänger-Themen 11
S Rechnen mit Datum bzw. Uhrzeit Java Basics - Anfänger-Themen 3
B mit Datum rechnen Java Basics - Anfänger-Themen 10
C Rechnen mit Brüchen, ist meine Lösung soweit richtig? Java Basics - Anfänger-Themen 4
C Kann mir jemand sagen warum ich nicht mal rechnen kann ? Java Basics - Anfänger-Themen 32
Liroyd Methode mit Objektvariabel rechnen? Java Basics - Anfänger-Themen 6
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
Zeppi Geteilt rechnen Java Basics - Anfänger-Themen 2
D Mit Objekten rechnen, Textfield, JavaFX, Noob Java Basics - Anfänger-Themen 8
L Mit Zahlen im String rechnen Java Basics - Anfänger-Themen 19
L Datentypen Rechnen und abrunden mit double Java Basics - Anfänger-Themen 7
S Hamster Simulator rechnen lernen Parameter int Java Basics - Anfänger-Themen 6
D Operatoren Mit Objekten rechnen Java Basics - Anfänger-Themen 7
P Rechnen mit Brüchen - objektorientierte Programmierung Java Basics - Anfänger-Themen 18
S Rechnen mit MaxValue Java Basics - Anfänger-Themen 7
L Rechnen mit Objekten Java Basics - Anfänger-Themen 3
W Erste Schritte Rechnen mit Schleifen? Denkanstoß gesucht Java Basics - Anfänger-Themen 15
W Seltames Problem bei Rechnen mit BigIntegers Java Basics - Anfänger-Themen 2
A Rechnen mit Text und Zahl Java Basics - Anfänger-Themen 4
S Jede Ziffer einer Zahl auslesen, damit rechnen und beim Ergebnis wiederholen ? Java Basics - Anfänger-Themen 20
S Dezimalzahlen rechnen Java Basics - Anfänger-Themen 3
kilopack15 Rechnen mit großen Zahlen Java Basics - Anfänger-Themen 6
D Rechnen mit numerischen Datentyp Frage Java Basics - Anfänger-Themen 16
E Best Practice Exaktes Rechnen mit (Pseudo-)Rationalen/Realen Zahlen. Operations Zuweisung für (eigene) Klassen Java Basics - Anfänger-Themen 3
1 Mit Java Rechnen Java Basics - Anfänger-Themen 10
T Einstieg in "grafische Progammierung" + Rechnen in Flussdiagramm Java Basics - Anfänger-Themen 2
W Variablen float rundet beim Bruch rechnen Java Basics - Anfänger-Themen 3
N Oracle SQL mit Zwischenergebnis rechnen Java Basics - Anfänger-Themen 2
Y Variable Menge von Objekten erzeugen und mit ihren Attributen rechnen Java Basics - Anfänger-Themen 7
S Double mithilfe eines Scanners so einlesen, dass ich damit rechnen kann Java Basics - Anfänger-Themen 4
J Char-Rechnen Java Basics - Anfänger-Themen 8
A Rechnen mit Set/Get? Java Basics - Anfänger-Themen 2
Z Erste Schritte Instanzmethoden Rechnen (Bruch) Java Basics - Anfänger-Themen 18
M Mit Werten aus Arrays in anderen Methoden rechnen? Java Basics - Anfänger-Themen 3
F Erste Schritte [GUI] Dual in Dezimal rechnen Java Basics - Anfänger-Themen 5
D Erste Schritte Rechnen mit Brüchen Java Basics - Anfänger-Themen 13
D rechnen mit Stunden und Minuten Java Basics - Anfänger-Themen 14
N mit Werten aus einer mysql datenbank in java rechnen Java Basics - Anfänger-Themen 17
G Rechnen mit Long Variablen Java Basics - Anfänger-Themen 4
N Probleme beim Rechnen mit Integer und double Java Basics - Anfänger-Themen 4
W Variablen Rechnen mit "char" Java Basics - Anfänger-Themen 2
Joew0815 Compiler-Fehler Unexpected Type - Problem mit Variablen rechnen Java Basics - Anfänger-Themen 7
F Werte aus Tabelle vergleichen/rechnen Java Basics - Anfänger-Themen 5
C Mit Potenzen rechnen "Problem" Java Basics - Anfänger-Themen 3
M Mit Array rechnen Java Basics - Anfänger-Themen 9
T Rechnen in Arrays Java Basics - Anfänger-Themen 11
B von Ergebniss weiter rechnen Java Basics - Anfänger-Themen 3
S Datentypen Operatoren und Ausdrücke (formel richtig rechnen) Java Basics - Anfänger-Themen 8
N Mit long rechnen Java Basics - Anfänger-Themen 2
K Übungsblatt 13 Aufgabe 6 (Rechnen) Java Basics - Anfänger-Themen 12
C Mit Gleitkommazahlen rechnen Java Basics - Anfänger-Themen 20
T Rechnen mit Operatoren Java Basics - Anfänger-Themen 2
W Mit (char) rechnen Java Basics - Anfänger-Themen 3
F Mit Arrays rechnen Java Basics - Anfänger-Themen 12
H Datentypen Rechnen mit signed Byte-Array - unsinged byte Java Basics - Anfänger-Themen 3
B mit benutzereingaben rechnen Java Basics - Anfänger-Themen 4
L Bruch rechnen Java Basics - Anfänger-Themen 29
D Rechnen mit int Array Java Basics - Anfänger-Themen 9
M mit Uhrzeit rechnen Java Basics - Anfänger-Themen 11
T mit Winkel & Sinus rechnen / sin(30°)=2,5 Java Basics - Anfänger-Themen 7
A Rechnen mit big integer Java Basics - Anfänger-Themen 29
L Mit matrizen rechnen Java Basics - Anfänger-Themen 19
W Probleme mit double rechnen Java Basics - Anfänger-Themen 4
J Datentypen Rechnen mit unterschiedlichen Datentypen Java Basics - Anfänger-Themen 3
K mit einer int rechnen Java Basics - Anfänger-Themen 10
M Warum -48 rechnen? Java Basics - Anfänger-Themen 3
K Java Code rechnen Java Basics - Anfänger-Themen 7
F Rechnen mit komplexen Zahlen Java Basics - Anfänger-Themen 23
C Datentypen Unklarheiten beim Rechnen Java Basics - Anfänger-Themen 5
W Modulo rechnen Java Basics - Anfänger-Themen 3
H Datentypen Rechnen und Runden Java Basics - Anfänger-Themen 2
S Rechnen mit Zeitangaben Java Basics - Anfänger-Themen 5
Binary.Coder Doppeltes Hashing verläuft in "Endlosscheife" beim rechnen per Hand Java Basics - Anfänger-Themen 8
F Mit Anzahl Startparametern rechnen Java Basics - Anfänger-Themen 17
T mit List<Integer> rechnen Java Basics - Anfänger-Themen 9
O einfaches rechnen mit zahlen Java Basics - Anfänger-Themen 4
K Stunden zusammen Rechnen Java Basics - Anfänger-Themen 4
T mit Typen Date rechnen Java Basics - Anfänger-Themen 6
S mit Werten aus 2D-Array rechnen Java Basics - Anfänger-Themen 32
J Anfänger-Problem: Rechnen mit Java Java Basics - Anfänger-Themen 3
J Mit Java exp Rechnen ? Java Basics - Anfänger-Themen 4
P Mit double und BigDecimal rechnen Java Basics - Anfänger-Themen 6
K Wie zerlege Ich einen String zum Rechnen? Java Basics - Anfänger-Themen 3
D Rechnen mit zwei Klassen Java Basics - Anfänger-Themen 19
J Mit Zeitzonen rechnen! Java Basics - Anfänger-Themen 3
G Float schneidet nach dem Rechnen auf eine Stelle ab Java Basics - Anfänger-Themen 9
L Eingeben Rechnen Ausgeben - Leider nicht so einfach Java Basics - Anfänger-Themen 31
G Mit tastatureingaben rechnen Java Basics - Anfänger-Themen 10
B Großer Java bug beim rechnen? Java Basics - Anfänger-Themen 66
S mit Strings rechnen Java Basics - Anfänger-Themen 16
D mit request.getParameter("x") rechnen Java Basics - Anfänger-Themen 3
T mit byte rechnen. ? Java Basics - Anfänger-Themen 8
MrTical Zahlen einlesen um damit zu rechnen Java Basics - Anfänger-Themen 5
Safado modulo rechnen Java Basics - Anfänger-Themen 5
F mit Dualzahlen rechnen Java Basics - Anfänger-Themen 5
J Rechnen mit Dualzahlen Java Basics - Anfänger-Themen 5
C Bedingtes Rechnen Java Basics - Anfänger-Themen 64
G mit Strings rechnen (Unicode) Java Basics - Anfänger-Themen 15
H Modulo rechnen Java Basics - Anfänger-Themen 17
T Rechnen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben