Datum formatieren

rumdiidumdii

Mitglied
Hallo liebe Community,

ich habe einen String der wie folgt aussieht:
Code:
03.01.2010 19:00:41
Diesen String will ich umfortmatieren.
Danach soll er folgenden Aufbau haben:
Code:
 2010, 00, 03, 19, 00, 41

Wie ist das möglich?

MFG Basti
 
Zuletzt bearbeitet von einem Moderator:
G

Gast2

Gast
Du kannst den string entweder per hand umformatiere, oder du schaust dir mal das SimpleDateFormat an, inbesondere die parse methode.
 

rumdiidumdii

Mitglied
Danke schonmal.

Ich habe es mal mit SimpledateFormat probiert, wirft aber einen Fehler

Code:
DateFormat inFormat = new SimpleDateFormat("dd.mm.yyyy hh:mm:ss");
Date inDate = inFormat.parse(aktline);
DateFormat outFormat = new SimpleDateFormat("yyyy, mm, dd, hh, mm, ss");
String outDate = outFormat.format(inDate);
System.out.println(outDate);

Was ist daran falsch?
 
S

SlaterB

Gast
> Was ist daran falsch?
Fehler nicht genannt

und schaue genau nach was jedes einzelne Symbol bedeutet,
allein dass du 'm' sowohl für Monat als auch Minute verwendest, kann ja kaum hinkommen,
oder soll Java schauen was links und rechts daneben steht und dann interpretieren?
 
G

Gast2

Gast
Dann hast du das falsche Date importiert. parse gibt ein java.util.Date zurück. Das musst du auch so importieren :)
 
T

tommysenf

Gast
Schau dir am besten noch mal die Pattern Doku an, hier haben sich bei dir ein Fehler eingeschlichen...
Java:
	public static void main(String[] args) throws Exception {

		String aktline = "03.01.2010 19:00:41";
		DateFormat inFormat = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
		Date inDate = inFormat.parse(aktline);
		DateFormat outFormat = new SimpleDateFormat("yyyy, MM, dd, HH, mm, ss");
		String outDate = outFormat.format(inDate);
		System.out.println(outDate);

	}
 

rumdiidumdii

Mitglied
Okai vielen dank das wäre erledigt.
Jetzt habe ich aber ein anderes Problem und zwar sieht mein String folgendermaßen aus
Code:
23.12.2010 11:52:36   23.12.2010 11:58:56
das erste "Datum" formatiert er korrekt.
Code:
2010, 12, 23, 11, 52, 36

Das zweite wird jedoch gar nicht her genommen.
Muss ich nun aus dem einem String, 2 neue Strings machen? Oder ein String Array oder wie oder was?
 

Andi_CH

Top Contributor
Dazu kann ich nur sagen: "Dann nimm es doch einfach her" ???:L???:L???:L
Splitter erst mal den String in zwei Teile und behandle jeden gleich.
 
T

tommysenf

Gast
Java:
public class Main {

	public static final DateFormat IN_FORMAT = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
	public static final DateFormat OUT_FORMAT = new SimpleDateFormat("yyyy, MM, dd, HH, mm, ss");
	
	public static void main(String[] args) throws Exception {

		String aktline = "23.12.2010 11:52:36   23.12.2010 11:58:56";
		
		System.out.println(format(aktline.substring(0,19)));
		System.out.println(format(aktline.substring(21,41)));
	}
	
	
	static String format(String source) throws ParseException {
		
		return OUT_FORMAT.format(IN_FORMAT.parse(source));
	}

}
 

rumdiidumdii

Mitglied
Hab das Splitted jetzt hinbekommen. Sry mein Schädel ist etwas verraucht Oo

Nun habe ich den/die String(s) im richtigen Format.

Nun will ich den String wieder als Datum
Also parse ich den String zu einem datum:
Java:
String outDate = 2010, 01, 03, 19, 00, 41;
DateFormat datum = new SimpleDateFormat("yyyy, MM, dd, HH, mm, ss");
java.util.Date datum1 = datum.parse(outDate);

Tja da kommt bloß leider
Code:
Sun Jan 03 19:00:41 CET 2010
raus
 
S

SlaterB

Gast
Skandal, du gibts 2010 ein und es kommt tatsächlich ein Datum 2010 raus,
welch ein Frevel

oder willst du noch näher erläutern, was genau dich stört?
 
S

SlaterB

Gast
doch, siehe API-Beschreibung der Methode,
zumindest bei SimpleDateFormat, in DateFormat bei einer anderen parse-Methode, parseObject
 

rumdiidumdii

Mitglied
ja entschuldigung das ich frag oO
hab nun alles mit kalendern hinbekommen etc.

nun lass ich mir die differenz zeiten ausgeben.
Heißt hierdraus
Code:
Unavailable 03.01.2010 19:00:41 - 03.01.2010 19:17:36
errechnet mein Programm die Differenz, aufgeteilt in
Code:
Stunden: 0 Minuten: 16 Sekunden: 55

Da ich dieses Prozedere öfter wiederhole will ich alle Minuten und alle Sekunden zusammen zählen so dass ich am Ende eine Gesamtzeit habe.
Java:
GregorianCalendar damals = new GregorianCalendar(intarray[0], intarray[1], intarray[2], intarray[3], intarray[4], intarray[5]);
       GregorianCalendar heute = new GregorianCalendar(intarray2[0], intarray2[1], intarray2[2], intarray2[3], intarray2[4], intarray2[5]);
       
       long millis = heute.getTimeInMillis() - damals.getTimeInMillis();
       heute.setTimeInMillis(millis);
       long minis = millis / 60000;

       int milli = (int)(millis % 1000);
       millis /=1000;
       byte sec = (byte)(millis % 60);
       millis /=60;
       byte min = (byte)(millis % 60);
       millis /=60;
       byte h = (byte)(millis% 24);
       millis /=24;
       int d = (int)millis;
       
     System.out.println(" Stunden: "+h+" Minuten: "+min+" Sekunden: "+sec);
       
    
    gesamt = (byte) (gesamt + min);

Am Anfag klappt das auch jedoch wenn das erste mal die Minute einstellig ist kommt eine Minuszahl raus.

Wieso?
 
S

SlaterB

Gast
schade dass du wieder relativ ungenau bleibst, geht es um die gesamt-Variable?
die ist als byte in ihrem Werte-Bereich begrenzt, wenn zu groß, dann gehts ins negative,
bei ein paar Minuten aber noch nicht:

Java:
        byte gesamt = 0;
        for (long m = 10; m < 1000000; m += 10000)
        {
            long millis = m;
            long minis = millis / 60000;

            int milli = (int)(millis % 1000);
            millis /= 1000;
            byte sec = (byte)(millis % 60);
            millis /= 60;
            byte min = (byte)(millis % 60);
            millis /= 60;
            byte h = (byte)(millis % 24);
            millis /= 24;
            int d = (int)millis;

            gesamt = (byte) (gesamt + min); 
            
            System.out.println(" Stunden: " + h + " Minuten: " + min + " Sekunden: " + sec+" - gesamt: "+gesamt);
        }
Code:
 Stunden: 0 Minuten: 0 Sekunden: 0 - gesamt: 0
 Stunden: 0 Minuten: 0 Sekunden: 10 - gesamt: 0
 Stunden: 0 Minuten: 0 Sekunden: 20 - gesamt: 0
 Stunden: 0 Minuten: 0 Sekunden: 30 - gesamt: 0
 Stunden: 0 Minuten: 0 Sekunden: 40 - gesamt: 0
 Stunden: 0 Minuten: 0 Sekunden: 50 - gesamt: 0
 Stunden: 0 Minuten: 1 Sekunden: 0 - gesamt: 1
 Stunden: 0 Minuten: 1 Sekunden: 10 - gesamt: 2
 Stunden: 0 Minuten: 1 Sekunden: 20 - gesamt: 3
 Stunden: 0 Minuten: 1 Sekunden: 30 - gesamt: 4
 Stunden: 0 Minuten: 1 Sekunden: 40 - gesamt: 5
 Stunden: 0 Minuten: 1 Sekunden: 50 - gesamt: 6
 Stunden: 0 Minuten: 2 Sekunden: 0 - gesamt: 8
 Stunden: 0 Minuten: 2 Sekunden: 10 - gesamt: 10
 Stunden: 0 Minuten: 2 Sekunden: 20 - gesamt: 12
 Stunden: 0 Minuten: 2 Sekunden: 30 - gesamt: 14
 Stunden: 0 Minuten: 2 Sekunden: 40 - gesamt: 16
 Stunden: 0 Minuten: 2 Sekunden: 50 - gesamt: 18
 Stunden: 0 Minuten: 3 Sekunden: 0 - gesamt: 21
 Stunden: 0 Minuten: 3 Sekunden: 10 - gesamt: 24
 Stunden: 0 Minuten: 3 Sekunden: 20 - gesamt: 27
 Stunden: 0 Minuten: 3 Sekunden: 30 - gesamt: 30
 Stunden: 0 Minuten: 3 Sekunden: 40 - gesamt: 33
 Stunden: 0 Minuten: 3 Sekunden: 50 - gesamt: 36
 Stunden: 0 Minuten: 4 Sekunden: 0 - gesamt: 40
 Stunden: 0 Minuten: 4 Sekunden: 10 - gesamt: 44
 Stunden: 0 Minuten: 4 Sekunden: 20 - gesamt: 48
 Stunden: 0 Minuten: 4 Sekunden: 30 - gesamt: 52
 Stunden: 0 Minuten: 4 Sekunden: 40 - gesamt: 56
 Stunden: 0 Minuten: 4 Sekunden: 50 - gesamt: 60
 Stunden: 0 Minuten: 5 Sekunden: 0 - gesamt: 65
 Stunden: 0 Minuten: 5 Sekunden: 10 - gesamt: 70
 Stunden: 0 Minuten: 5 Sekunden: 20 - gesamt: 75
 Stunden: 0 Minuten: 5 Sekunden: 30 - gesamt: 80
 Stunden: 0 Minuten: 5 Sekunden: 40 - gesamt: 85
 Stunden: 0 Minuten: 5 Sekunden: 50 - gesamt: 90
 Stunden: 0 Minuten: 6 Sekunden: 0 - gesamt: 96
 Stunden: 0 Minuten: 6 Sekunden: 10 - gesamt: 102
 Stunden: 0 Minuten: 6 Sekunden: 20 - gesamt: 108
 Stunden: 0 Minuten: 6 Sekunden: 30 - gesamt: 114
 Stunden: 0 Minuten: 6 Sekunden: 40 - gesamt: 120
 Stunden: 0 Minuten: 6 Sekunden: 50 - gesamt: 126
 Stunden: 0 Minuten: 7 Sekunden: 0 - gesamt: -123
 Stunden: 0 Minuten: 7 Sekunden: 10 - gesamt: -116
 Stunden: 0 Minuten: 7 Sekunden: 20 - gesamt: -109
 Stunden: 0 Minuten: 7 Sekunden: 30 - gesamt: -102
 Stunden: 0 Minuten: 7 Sekunden: 40 - gesamt: -95
 Stunden: 0 Minuten: 7 Sekunden: 50 - gesamt: -88
 Stunden: 0 Minuten: 8 Sekunden: 0 - gesamt: -80
 Stunden: 0 Minuten: 8 Sekunden: 10 - gesamt: -72
 Stunden: 0 Minuten: 8 Sekunden: 20 - gesamt: -64
 Stunden: 0 Minuten: 8 Sekunden: 30 - gesamt: -56
 Stunden: 0 Minuten: 8 Sekunden: 40 - gesamt: -48
 Stunden: 0 Minuten: 8 Sekunden: 50 - gesamt: -40
 Stunden: 0 Minuten: 9 Sekunden: 0 - gesamt: -31
 Stunden: 0 Minuten: 9 Sekunden: 10 - gesamt: -22
 Stunden: 0 Minuten: 9 Sekunden: 20 - gesamt: -13
 Stunden: 0 Minuten: 9 Sekunden: 30 - gesamt: -4
 Stunden: 0 Minuten: 9 Sekunden: 40 - gesamt: 5
 Stunden: 0 Minuten: 9 Sekunden: 50 - gesamt: 14
 Stunden: 0 Minuten: 10 Sekunden: 0 - gesamt: 24
 Stunden: 0 Minuten: 10 Sekunden: 10 - gesamt: 34
 Stunden: 0 Minuten: 10 Sekunden: 20 - gesamt: 44
 Stunden: 0 Minuten: 10 Sekunden: 30 - gesamt: 54
 Stunden: 0 Minuten: 10 Sekunden: 40 - gesamt: 64
 Stunden: 0 Minuten: 10 Sekunden: 50 - gesamt: 74
 Stunden: 0 Minuten: 11 Sekunden: 0 - gesamt: 85
 Stunden: 0 Minuten: 11 Sekunden: 10 - gesamt: 96
 Stunden: 0 Minuten: 11 Sekunden: 20 - gesamt: 107
 Stunden: 0 Minuten: 11 Sekunden: 30 - gesamt: 118
 Stunden: 0 Minuten: 11 Sekunden: 40 - gesamt: -127
 Stunden: 0 Minuten: 11 Sekunden: 50 - gesamt: -116
 Stunden: 0 Minuten: 12 Sekunden: 0 - gesamt: -104
 Stunden: 0 Minuten: 12 Sekunden: 10 - gesamt: -92
 Stunden: 0 Minuten: 12 Sekunden: 20 - gesamt: -80
 Stunden: 0 Minuten: 12 Sekunden: 30 - gesamt: -68
 Stunden: 0 Minuten: 12 Sekunden: 40 - gesamt: -56
 Stunden: 0 Minuten: 12 Sekunden: 50 - gesamt: -44
 Stunden: 0 Minuten: 13 Sekunden: 0 - gesamt: -31
 Stunden: 0 Minuten: 13 Sekunden: 10 - gesamt: -18
 Stunden: 0 Minuten: 13 Sekunden: 20 - gesamt: -5
 Stunden: 0 Minuten: 13 Sekunden: 30 - gesamt: 8
 Stunden: 0 Minuten: 13 Sekunden: 40 - gesamt: 21
 Stunden: 0 Minuten: 13 Sekunden: 50 - gesamt: 34
 Stunden: 0 Minuten: 14 Sekunden: 0 - gesamt: 48
 Stunden: 0 Minuten: 14 Sekunden: 10 - gesamt: 62
 Stunden: 0 Minuten: 14 Sekunden: 20 - gesamt: 76
 Stunden: 0 Minuten: 14 Sekunden: 30 - gesamt: 90
 Stunden: 0 Minuten: 14 Sekunden: 40 - gesamt: 104
 Stunden: 0 Minuten: 14 Sekunden: 50 - gesamt: 118
 Stunden: 0 Minuten: 15 Sekunden: 0 - gesamt: -123
 Stunden: 0 Minuten: 15 Sekunden: 10 - gesamt: -108
 Stunden: 0 Minuten: 15 Sekunden: 20 - gesamt: -93
 Stunden: 0 Minuten: 15 Sekunden: 30 - gesamt: -78
 Stunden: 0 Minuten: 15 Sekunden: 40 - gesamt: -63
 Stunden: 0 Minuten: 15 Sekunden: 50 - gesamt: -48
 Stunden: 0 Minuten: 16 Sekunden: 0 - gesamt: -32
 Stunden: 0 Minuten: 16 Sekunden: 10 - gesamt: -16
 Stunden: 0 Minuten: 16 Sekunden: 20 - gesamt: 0
 Stunden: 0 Minuten: 16 Sekunden: 30 - gesamt: 16
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Ein Datum (int) durch Methode als String formatieren Java Basics - Anfänger-Themen 2
A Datum formatieren Java Basics - Anfänger-Themen 6
A Datum formatieren Java Basics - Anfänger-Themen 8
W String datum formatieren Java Basics - Anfänger-Themen 2
I Datum formatieren Java Basics - Anfänger-Themen 2
G Datum Formatieren vorher "19801120" formatiert &qu Java Basics - Anfänger-Themen 11
S Datum formatieren Java Basics - Anfänger-Themen 13
R aktuelles Datum formatieren und in einem String speichern Java Basics - Anfänger-Themen 5
C Darstellung von Datum - Codes richtig? Java Basics - Anfänger-Themen 2
L Datum - Monat und Jahr werden falsch angezeigt Java Basics - Anfänger-Themen 4
T Datum als Variable wert Java Basics - Anfänger-Themen 4
T Datum in die als Variabelwert Java Basics - Anfänger-Themen 5
B Beliebiger String gegeben Suche Datum in String Java Basics - Anfänger-Themen 6
MiMa Ungültiges Datum wird nicht erkannt ?? Java Basics - Anfänger-Themen 6
S Algorithmus entwicklen, der zu einem gegebenen Datum die Jahreszeit ermittelt Java Basics - Anfänger-Themen 13
berserkerdq2 Wie datum im default format speichern? Java Basics - Anfänger-Themen 5
W Methode, die mit einem Datum arbeitet? Java Basics - Anfänger-Themen 22
K Datum einlesen und Tag, Monat und Jahr einzeln ausgeben Java Basics - Anfänger-Themen 1
K Datum einlesen und Tag, Monat und Jahr einzeln ausgeben Java Basics - Anfänger-Themen 1
J Datum ermitteln ? Java Basics - Anfänger-Themen 14
KogoroMori21 Java Datum Differenz (kleiner Fehler) Java Basics - Anfänger-Themen 10
J JDatePicker: Datum wird nicht in Textfeld übernommen Java Basics - Anfänger-Themen 5
N Zwei Daten (Datum) miteinander vergleichen, abspeichern, laden Java Basics - Anfänger-Themen 4
N Ein Datum berechnen Java Basics - Anfänger-Themen 3
T Datum und Uhrzeit Java Basics - Anfänger-Themen 4
B Liste von Tagen generieren ab einem bestimmten Datum und Endedatum Java Basics - Anfänger-Themen 4
B Datum in dieser Range SQL? Java Basics - Anfänger-Themen 3
D Kontoauszüge von bestimmtem Datum Java Basics - Anfänger-Themen 35
B Termine (Datum erstellen), Abhängig von Intervallen Java Basics - Anfänger-Themen 0
A Nächstes Datum ausgeben, if-Schleife unklar Java Basics - Anfänger-Themen 6
J Best Practice Datum Differenz aus zwei Strings ermitteln Java Basics - Anfänger-Themen 8
Bluedaishi Datum in Jtextarea füllen Java Basics - Anfänger-Themen 5
E 2 Probleme - Datum & private finale Variablen Java Basics - Anfänger-Themen 5
S Datum umformatieren Java Basics - Anfänger-Themen 2
D Datum aus Swing in MySQL DB speichern Java Basics - Anfänger-Themen 22
F LimitedQueue auf Datum prüfen Java Basics - Anfänger-Themen 6
T Datum wird auf der Konsole richtig ausgegeben, aber im Textarea kommt ERROR Java Basics - Anfänger-Themen 8
D Projekte + Datum + löschen Java Basics - Anfänger-Themen 11
M Datum serialisieren Java Basics - Anfänger-Themen 1
S Datum einlesen Java Basics - Anfänger-Themen 1
D Aktuelles Datum wird falsch ausgegeben Java Basics - Anfänger-Themen 2
K Methoden Datum parsen Java Basics - Anfänger-Themen 16
C JList Einträge nach Datum sortieren Java Basics - Anfänger-Themen 3
MiMa Jüngstes Datum ermitteln Java Basics - Anfänger-Themen 4
2 Uhrzeit und Datum aktualisieren Java Basics - Anfänger-Themen 12
R Problem beim Wochenplan (Datum,Wochentag) Java Basics - Anfänger-Themen 30
O Datum-Werte gruppieren Java Basics - Anfänger-Themen 6
J Java Datum- Zeit Differenz bilden! Java Basics - Anfänger-Themen 4
M Methoden Aus Timestamp das Datum berechnen Java Basics - Anfänger-Themen 3
B Kontoauszug mit Datum ausgeben Java Basics - Anfänger-Themen 4
M Datum in Millisekunden allerdings ohne Uhrzeit Java Basics - Anfänger-Themen 4
DeVolt Java8 Paket Time: Datum prüfen / try-catch Java Basics - Anfänger-Themen 1
T Datum mit einem Datums-Bereich vergleichen Java Basics - Anfänger-Themen 10
J Datum und Uhrzeit in Datenbank falsch hinterlegt Java Basics - Anfänger-Themen 13
L Aus Datum Millisekunden ermitteln ohne Zeitzonen-Berücksichtigung Java Basics - Anfänger-Themen 6
P Wieviele Tage seit dem Datum vergangen sind Java Basics - Anfänger-Themen 5
P Liste nach Datum sortieren Java Basics - Anfänger-Themen 7
B tageszahl in Datum umrechnen Java Basics - Anfänger-Themen 6
F Datum Differenz berechnen Java Basics - Anfänger-Themen 7
B String in Datum Java Basics - Anfänger-Themen 3
M CompareTo soll Datum sortieren Java Basics - Anfänger-Themen 2
K Daten (im Sinne von Datum) aus Webseiten extrahieren Java Basics - Anfänger-Themen 6
AssELAss String in Datum umwandeln Java Basics - Anfänger-Themen 4
I Datum und Uhrzeitpattern von Locale Java Basics - Anfänger-Themen 7
H Wie wandel ich ein Datum in eine Zeichenkette um mit StringBuffer? Java Basics - Anfänger-Themen 3
I Datum ohne GregorianCalendar und co. Java Basics - Anfänger-Themen 3
A Datum zwischen zwei Daten berechnen und in Tagen anzeigen Java Basics - Anfänger-Themen 4
N Datum abgleichen und Frage zum Layout Java Basics - Anfänger-Themen 3
D Wochentag für eingegebenes Datum bestimmen anhand von Formel Java Basics - Anfänger-Themen 2
E Zeit zum bestimmten Datum in millisekunden berechnen Java Basics - Anfänger-Themen 5
M Aktuelles Datum in MySQL speichern Java Basics - Anfänger-Themen 11
P Datum umwandeln Java Basics - Anfänger-Themen 5
K Samstag einer Woche anhand eines Datum Java Basics - Anfänger-Themen 3
J Mit Datum rechnen Java Basics - Anfänger-Themen 11
B Datum ändern? Java Basics - Anfänger-Themen 8
Tally Methoden BlueJ - Datum als Kalendertag int - tagImJahr Java Basics - Anfänger-Themen 6
K wie Datum in JTable anders anzeigen lassen Java Basics - Anfänger-Themen 2
B Differenz von 2 Datum Java Basics - Anfänger-Themen 8
MiMa String Datum ermitteln Java Basics - Anfänger-Themen 9
D Hilfe beim SDF Datum Ausgabe Java Basics - Anfänger-Themen 20
A Plausibles Datum Java Basics - Anfänger-Themen 21
A Aktuelles Datum einfügen.. Java Basics - Anfänger-Themen 4
K Datum und Uhrzeit als Date Objekt Java Basics - Anfänger-Themen 10
K Java Datum berechnen Java Basics - Anfänger-Themen 13
L Datum probleme Java Basics - Anfänger-Themen 6
S fehler beim datum parsen Java Basics - Anfänger-Themen 6
S Schleife Datum Java Basics - Anfänger-Themen 11
S Datum ändern bzw. abziehen Java Basics - Anfänger-Themen 3
M String in Datum umwandeln mit SimpleDateFormat Java Basics - Anfänger-Themen 3
E Datentypen Unvollständiges Datum parsen Java Basics - Anfänger-Themen 8
T Heutiges datum OHNE Calendar? Java Basics - Anfänger-Themen 9
K Wie Datum um einen Tag erhöhen? Java Basics - Anfänger-Themen 4
A Datum Prüfen Java Basics - Anfänger-Themen 3
B Wie aus einem Datum String eine Timestamp erzeugen Java Basics - Anfänger-Themen 6
E Datum und Uhrzeit von UTC in MET umrechnen Java Basics - Anfänger-Themen 6
E Methoden Datum , Uhrzeit, Nachricht in txt Datei schreiben Java Basics - Anfänger-Themen 3
E Eigene class datum Java Basics - Anfänger-Themen 2
E Algorithmen und Programmierung - Datum und Zeit ausgeben? Java Basics - Anfänger-Themen 8
M Datum aus einer Textdatei holen Java Basics - Anfänger-Themen 9
M Datum und Stunde als String ausgeben Java Basics - Anfänger-Themen 15

Ähnliche Java Themen

Neue Themen


Oben