Anzeige:
Ergebnis 1 bis 2 von 2

Thema: Weblog-Auswerter

  1. #1
    Registrierter Benutzer
    Registriert seit
    04.01.2007
    Beiträge
    20

    Weblog-Auswerter

    Hi all.

    Ich habe ein Projekt namens Weblog-Auswerter welches ich nicht so ganz nachvollziehen kann.

    Hier könnt ihr euch das Ding runterladen :
    www.eschgarth.de/Weblog-Auswerter.zip

    Sobald man ein Exemplar der Klasse Protokollauswerter erzeugt, wird im Terminalfenster angezeigt, dass das Lesen der Datei fehl schlug und nun Simulationsdatein ausgegeben werden.
    Wenn man die Klasse dann auffordert die Log-Datei auszugeben (Methode)
    werden 47 Zeilen voll mit Werten ausgegeben.

    Ich frage mich nun woher der Auswerter diese Werte bloss nimmt.

    Über hilfe würde ich mich sehr freuen !

    LG

  2. #2
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485
    Hallo

    Erstens denke ich nicht das die Methode in LogDateiLeser (Zeile 52 rum) geeignet ist um eine lokale Datei aufzurufen:

    Code:
    URL fileURL = getClass().getClassLoader().getResource(dateiname);
    Ich habe die ersetzt durch

    Code:
    File f = new File("weblog.txt");
    Und dann
    Code:
    BufferedReader logdatei = new BufferedReader(new FileReader(f));
    Damit ist einmal der erste Fehler weg und er liest tatsächlich die Datei aus.

    Zweitens: Im Fehlerfall werden im LogDateiLeser in der Methode Simulationsdaten erzeugt: erzeugeSimulationsdaten() heißt die Methode dazu.

    Das ganze sieht so aus:
    Code:
            catch(IOException e) {
                System.out.println("Lesen der Datei schlug fehl: " +
                                   dateiname);
                System.out.println("Es werden nun Simulationsdaten verwendet.");
                erzeugeSimulationsdaten(_eintraege);
            }
    Ist zwar kein schönes Errorhandling, aber was solls.

    mfg, christian

    Viel wichtiger noch, wieso musste ich mir meine eigene Main-methode erzeugen:

    Code:
    	public static void main(String args[]) {
    		ProtokollAuswerter pa = new ProtokollAuswerter();
    		pa.logdateiAusgeben();
    		pa.stundendatenAusgeben();
    	}
    Das ist anstrengend.

    Drittens: Trau dich ruhig Code auszugeben oder zu debuggen. In Eclipse ist debuggen sehr einfach, ansonsten verwende eben die primitvste Art des debuggens: Code lesen oder die zweitprimitivste: An allen möglichen Stellen Meldungen ausgeben:
    System.out.println("1: hier");
    Code
    System.out.println("2: hier");
    Code
    System.out.println("3: hier - ifSchleife 1. Zweig");
    Code
    usw.....

    mfg, christian
    Geändert von Waxolunist (19-01-2007 um 13:47 Uhr)
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •