Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
und zwar arbeite ich gerade an nem kleinen Projekt in dem es darum geht Log-Daten von einem Server zu laden. Pro Stunde wird eine Log-Datei erstellt die ich holen muss.
Ich habe einen festen Pfad angegeben z.B. http//....../Log_Datei.
An diesen Pfad muss ich jetzt das Datum und die letzte Stunde hängen, damit nur die aktuelle Datei geholt wird, sprich:
http//...../Log_Datei-2011-11-02-15 (für: 02.11.2011 von 15-16 Uhr)
Das "-2011-11-02-15" muss also noch hinten drangehängt werden.
Meine Probleme:
Wie hol ich mir das aktuelle Datum und wie hol ich mir NUR die eine Stunde die ich benötige.
Die brauch ich beide als String, damit ich die dann an den Pfad hängen kann (aber wie mach ich das?).
Datum könnt ich mir mal so holen aber kA ob mir das in der Form was bringt:
Java:
String today = new java.sql.Date(new Date().getTime()).toString();
das sieht schonmal gut aus^^ Das einzige Problem das ich jetzt halt hab ist, dass die aktuelle Stunde (also für 15:31 Uhr) die 15 ausgegeben wird aber ich brauch die 14, also immer eine Stunde früher. Kann ich das irgendwie abziehen? Und wie kann ich diesen String dann an einen anderen String hängen?
Dann nimmst Du einen weiteren Formatter nur für die Stunde. Diesen Wert läßt Du dir von Integer.parseInt() als int auswerten. Machst dann -1 und danach das ganze per String.format() wieder als zweistelligen ZeitCode...
Also ca so:
String stunde = new StringFormatter(...)
int std = Integer.parseInt(stunde)-1;
String neueStunde=String.format("%2d", std);
Schau Dir die Antwort von timbeau mal genauer an.
Dort steht eine Zeile, wo der Kalender manipuliert wird. Dieses kannst Du auch mit Tagen, Minuten etc. machen.
Calendar cal = Calendar.getInstance();
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
cal.add(Calendar.DATE, -1);
System.out.println("Yesterday's date was "+dateFormat.format(cal.getTime()));
String date = new SimpleDateFormat("yyyy-MM-DD").format(cal.getTime());
System.out.println(date);
nur spuckt er mir jetzt "2011-11-310" aus?!?! Ich brauchs halt auf jedenfall als String...
die Bedeutung eines jeden Zeichens, ob y, M oder D oder auch d, du verwendest ja beides, kann man nachschlagen,
310 ist völlig korrekt für D, nehme ich stark an, heute ist 311