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.
vorweg: ich kenn mich überhaupt nicht aus mit dem Einlesen von .txt-Dateien in Java. Hab zwar schon n paar Foren durchsucht aber immer kaum was verstanden und hoffe hier kann mir irgendjemand weiterhelfen.
Und zwar hab ich eine bestimme Text Datei (Test.txt) in der sehr viele Zeilen enthalten sind und am Anfang jeder Zeile steht ein Datum (Zeilenbeginn sieht so aus: 2011-11-03 15:49:25,786 ......................) Ich müsste lediglich in die erste Zeilen schaun und überprüfen ob das Datum das Datum von heute ist.
Die Textdatei liegt in einem Ordner auf meinem PC. Also muss ich halt auch irgendwo den Pfad angeben können wo die Datei liegt.
Hast du keine konkrete Fragen?
Wie man eine Datei einliest, findet man in 5sec mit Google raus. Ebenso wie man ein Datum aus einem String (mit einem angegebenen Format) parst. Danach musst du nur noch Tag, Monat und Jahr mit heute vergleichen.
- Einen verschachtelten Reader erzeugen mit new BufferedReader(new FileReader("<pfad>"));
- Eine String Variable "line" deklarieren
- Mit einer Schleife und readLine diese Variable Zeilenweise zuweisen
- Im Schleifenrumpf Deine Aktionen machen.
Hab zwar schon n paar Foren durchsucht aber immer kaum was verstanden und hoffe hier kann mir irgendjemand weiterhelfen.
Was hast Du denn gefunden? Bzw. was nicht verstanden? So schwer ist das eigentlich nicht. Aber manchmal ist man auch betriebsblind. Deswegen wär hier Dein konkretes Verständnisproblem wichtig.
und wenn du in einem Editor oder sonstiger Textverarbeitung dieses Link bei Öffnen eintippst, dann gehts auch?!
doch wohl eher nicht, http: // localhost/ ist doch ziemlich Browser-spezifisch
kannst du einen Windows-Explorer oder vergleichbare Programme bedienen und dort den Pfad zur Datei kopieren,
bzw. ihn selber überlegen?
unter Windows fangen Pfade z.B. mit c:/ an
[Java] BufferedReader br = new BufferedReader(new FileReader("http://localhost/ordner/projekt/journal.log"));[/Java]
Dat geht nicht. FileReader ist für Zugriffe auf Dateien im lokalen Dateisystem. Du musst hier mit einer HttpUrlConnection arbeiten. Das ist das, was Dein Browser im Hintergrund auch tut.
//Edit: Hab grad gesehen, dass die Datei auf localhost liegt. Dann fang doch erstmal mit Zugriff aufs Dateisystem an, bevor Du Dir noch mehr Schwierigkeiten mit Http-Zugriffen einbaust. Hat SlaterB ja auch schon geschrieben, der wohl manchmal die Posts etwas gründlicher liest als ich.
[Java]thisLine = br.readLine();[/Java]
Das ist ein guter Ansatz, wenn Du nur eine einzige Zeile lesen willst. Hast Du in den von Dir gefundenen Beispielen nirgendwo etwas mit einer Schleife gesehen ?!?
String date = ... ; // lade das gewünschte Datum hier rein
String firstLineOfFile = ... ; // lade erste Zeile aus der Datei hier rein
String regex = ".*" + date + ".*"; // erzeuge den String als regulären Ausdruck
if(firstLineOfFile.matches(regex)){
System.out.println("Date is in first line");
} else {
System.out.println("Date is not in first line");
}
Das ist ein wenig "quick & dirty", sollte aber funktionieren - auch wenn der konkrete Code so jetzt nicht von mir getestet wurde, über "String.matches" solltest du da hin kommen wo du hin willst