Wie Beheben von Java Probleme mit Dateien

Wenn die virtuelle Java-Maschine die Datei nicht finden können Sie es gefragt haben zu finden, wird eine Fehlermeldung angezeigt. Diese Fehlermeldung kann sehr frustrierend sein. In vielen Fällen wissen Sie verdammt gut, dass es eine ist rawData.txt Datei auf Ihrer Festplatte. Der dumme Computer kann es einfach nicht finden.

bild0.jpg

Es gibt keine schnelle, todsichere Methode, um dieses Problem zu beheben. Aber Sie sollten immer folgende Dinge überprüfen Sie zuerst:

  • Überprüfen Sie noch einmal für eine Datei mit dem NamenrawData.txt.

    Öffnen Sie den Arbeitsplatz (unter Windows) oder Finder (Mac) und herumzustochern für eine Datei mit diesem Namen.

    Die Dateinamen angezeigt im Arbeitsplatz und Finder können irreführend sein. Sie können den Namen Rohdaten, obwohl der Name der Datei ist rawData.txt.

  • Überprüfen Sie die Schreibweise des Namens der Datei.

    Stellen Sie sicher, dass der Name in Ihrem Programm ist genau das gleiche wie der Name der Datei auf Ihrer Festplatte. Nur eine unangebrachte Brief können den Computer verhindern, um eine Datei zu finden.

  • Wenn Sie Linux (oder ein Aroma von UNIX andere als Mac OS X) verwenden, überprüfen Sie die Großschreibung des Namens der Datei.

    Unter Linux und in vielen Versionen von UNIX, der Unterschied zwischen Groß- und Klein können den Computer verblüffen.

  • Überprüfen Sie, ob die Datei im richtigen Verzeichnis ist.

    Sicher, Sie haben eine Datei mit dem Namen rawData.txt. Aber erwarten Sie nicht Ihr Java-Programm in jedem Ordner auf Ihrer Festplatte zu suchen, die Datei zu finden. Wie Sie wissen, welche Ordner-Dateien aufnehmen sollte wie rawData.txt?

    Hier ist, wie es funktioniert: Jedes Eclipse-Projekt auf Ihrem Computer-Festplatte über einen eigenen Ordner hat. Sie sehen die 13-02 Projektordner und seine src Unterordner oben. Aber unter den Windows-Explorer zeigt die 13-02 Ordner, dessen src Unterordner, und seinen anderen Unterordner namens .Einstellungen und Kasten. (Mac-Benutzer können die gleichen Unterordner in einem Finder-Fenster zu sehen.)

    Das src, Kasten und .Einstellungen Ordner enthalten Dateien ihrer eigenen. Das rawData.txt und cookedData.txt Dateien sind unmittelbar innerhalb der 13-02-Projektordner. In anderen Worten, die rawData.txt und cookedData.txt Dateien leben des 13-02 Projektordner in der Wurzel.

    Wenn Sie dieses Beispiel ausführen, wird die rawData.txt Datei sollte auf Ihrer Festplatte in der Wurzel des 13-02 Projektordner sein.

    In der Regel kann Dateispeicherorte schwierig sein, besonders wenn man von Eclipse einem unbekannten IDE wechseln. Die allgemeine Regel (über das Setzen Ein- und Ausgabedateien direkt in einem Projektverzeichnis) kann in anderen Programmierumgebungen nicht anwendbar.

    Also hier ist ein Trick, den Sie verwenden können: Was auch immer IDE Sie (oder auch wenn Sie Java-Programme erstellen, ohne eine IDE) verwenden, führen Sie diese abgespeckte Version des Codes:

    Import java.io.File-Import java.io.FileNotFoundException-Import java.io.PrintStream-Klasse {Justwrite public static void main (String args []) wirft FileNotFoundException {Print diskWriter = new Print ( "cookedData.txt") - diskWriter.println (99,75) -diskWriter.close () -}}

    Dieses Programm hat keine Notwendigkeit für eine stinkende rawData.txt Datei. Wenn Sie diesen Code ausführen und keine Fehlermeldungen erhalten, suchen Sie Ihre Festplatte für die Ausgabe dieses Programm (das cookedData.txt Datei). Notieren Sie den Namen des Ordners, der enthält cookedData.txt Datei. Wenn Sie setzen rawData.txt in demselben Ordner, jedes Problem Sie den Code Listing 13-2 hatte laufen sollte weggehen.

    image1.jpg
  • Überprüf den rawData.txt Datei Inhalt.

    Es schadet nie, innerhalb der zu spähen rawData.txt Datei und stellen Sie sicher, dass die Datei, die Zahlen enthält 19.95 5. Ob rawData.txt nicht in Eclipse Editor-Bereich erscheinen, das Projekt im Paket-Explorer. Ein Doppelklick auf das Projekt rawData.txt Zweig macht diese Datei in Eclipse Editor-Bereich erscheinen.

    Standardmäßig Java Scanner Klasse sucht nach Leerzeichen zwischen Eingabewerten. Also dieses Beispiel ist rawData.txt Datei sollte 19.95 5, nicht 19,955 und nicht 19.95,5.

    Das Scanner Klasse sieht für jede Art von Leerzeichen zwischen den Werten. Diese Leerzeichen enthalten können Leerzeichen, Tabs und Zeilenumbrüchen. So zum Beispiel die rawData.txt Datei enthält möglicherweise 19.95 5 (Mit mehreren Leerzeichen zwischen 19.95 und 5) Oder kann es haben 19.95 und 5 auf zwei getrennten Leitungen.

Menü