• Wir präsentieren Dir heute ein Stellenangebot für einen Java Entwickler - m/w/d in Augsburg, München, Stuttgart oder Bamberg. Hier geht es zur Jobanzeige

Java erstellt leere Datei

L

LaserBlaubeere

Mitglied
Hallo, ich möchte ein Programm in Eclipse schreiben, dass eine HTML Datei einliest, die Umlaute einliest und ersetzt und anschließend eine neue Datei mit den ersetzten Umlauten schreibt. Die Datei wird auch eingelesen, aber die neue Datei ist einfach leer.
Vielleicht kann mir ja jemand von euch helfen, stehe aufm Schlauch.
Das hier ist mein Code:

Java:
import java.io.IOException;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.BufferedWriter;



public class HtmlConv {

    public HtmlConv() {
    }

    public static void main(String[] args) throws IOException {
        // Name der einzulesenden Datei
        String dateiName = "datei1702_vor.html";
        // Name der Datei in die geschrieben wird
        String dateiName2 = "datei1702_nach.html";
        
        //Methode zum einlesen der Datei
        leseDatei(dateiName, dateiName2);
    }

    /**
     * Methode zum einlesen und aendern der Datei
     * @param dateiName
     *             Name der Datei aus der Daten gelesen werden
     * @param dateiName2
     *             Name der Datei in der Daten geschrieben werden
     * @throws IOException
     */
    public static void leseDatei(String dateiName, String dateiName2) throws IOException {
    //Drei Eingabestroeme erzeugen und mit Datei verbinden
    FileInputStream fiStream = new FileInputStream(dateiName);
    InputStreamReader isReader = new InputStreamReader(fiStream);
    BufferedReader bReader = new BufferedReader(isReader);
    
    //Drei Ausgabestroeme erzeugen
    FileOutputStream foStream = new FileOutputStream(dateiName2);
    OutputStreamWriter osWriter = new OutputStreamWriter(foStream);
    BufferedWriter bWriter = new BufferedWriter(osWriter);
    
    
    do {
        String text = bReader.readLine();
        System.out.println(text);
        
        text = text.replace("ä", "ä").replace("Ä", "Ä")
                .replace("ö", "ö").replace("Ö", "Ö")
                .replace("ü", "ü").replace("Ü", "Ü")
                .replace("ß", "ß");
    
        System.out.print(text);
        
        bWriter.write(text);
        bWriter.write(System.getProperty("line.seperator"));
    
        
    } while (bReader.ready());
    //Eingabestrom schliessen
    bReader.close();
    //Ausgabestrom-Buffer leeren
    bWriter.flush();
    //Ausgabestrom schliessen
    bWriter.close();
    }
}
 
Oneixee5

Oneixee5

Bekanntes Mitglied
Also die Zeile 58 dürfte eine NullPointerException werfen. Wenn du Fragen stellst, dann solltest du Fehlermeldungen immer mit angeben.
Java:
            bWriter.write(System.getProperty("line.seperator")); // NPE

            bWriter.write(System.lineSeparator()); // OK
            bWriter.write(System.getProperty("line.separator")); // OK
Weiterhin solltest du das ry-with-resources Statement verwenden: http://javatricks.de/tricks/das-try-with-resources-statement
 
L

LaserBlaubeere

Mitglied
Also die Zeile 58 dürfte eine NullPointerException werfen. Wenn du Fragen stellst, dann solltest du Fehlermeldungen immer mit angeben.
Java:
            bWriter.write(System.getProperty("line.seperator")); // NPE

            bWriter.write(System.lineSeparator()); // OK
            bWriter.write(System.getProperty("line.separator")); // OK
Weiterhin solltest du das ry-with-resources Statement verwenden: http://javatricks.de/tricks/das-try-with-resources-statement
Oha ja, bitte Entschuldige! Ich bekomme folgende Fehlermeldung:
Exception in thread "main" java.lang.NullPointerException
at java.base/java.io.Writer.write(Writer.java:249)
at HtmlConv.leseDatei(HtmlConv.java:58)
at HtmlConv.main(HtmlConv.java:23)
 
Oneixee5

Oneixee5

Bekanntes Mitglied
Die NullPointerException führt hier zum sofortigen Ende des Programms. Deshalb ist die Zieldatei leer.
 
L

LaserBlaubeere

Mitglied
Die NullPointerException führt hier zum sofortigen Ende des Programms. Deshalb ist die Zieldatei leer.
Ok, die NullPointerException taucht nun nicht mehr auf, meine Datei ist jetzt nicht mehr leer, allerdings hat sich absolut nichts verändert in dem Text.
Danke dir für den Hinweis! Allerdings verstehe ich das try-with-resources Statement nicht so ganz, da ich doch am Ende meines Codes alle Reader/Writer schließe (dachte ich zumindest)?
 
mihe7

mihe7

Top Contributor
Allerdings verstehe ich das try-with-resources Statement nicht so ganz, da ich doch am Ende meines Codes alle Reader/Writer schließe (dachte ich zumindest)?
In Deinem Code oben wird eine Exception ausgelöst und damit wird der Code, der danach kommt, nicht mehr ausgeführt. Deine Dateien werden also nicht mehr geschlossen. try-with-resources sorgt dagegen dafür, dass alles, was AutoCloseable implementiert (z. B. Deine Streams), auch im Fall einer Exception geschlossen werden.
 
L

LaserBlaubeere

Mitglied
In Deinem Code oben wird eine Exception ausgelöst und damit wird der Code, der danach kommt, nicht mehr ausgeführt. Deine Dateien werden also nicht mehr geschlossen. try-with-resources sorgt dagegen dafür, dass alles, was AutoCloseable implementiert (z. B. Deine Streams), auch im Fall einer Exception geschlossen werden.
Vielen Dank, jetzt hab ich verstanden wofür ich das brauche. Fehlermeldungen gibt es keine mehr.
Jetzt bleibt mir nur noch das Problem, dass in der ...nach.html der gleiche Text steht wie in der ...vor.html
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B In welchem (Default) Pfad erstellt Java Dateien? Java Basics - Anfänger-Themen 4
M Java Eclipse IDE erstellt keinen Bin Ordner. Java Basics - Anfänger-Themen 10
M Java Bukkit Plugin (selbst erstellt) Java Basics - Anfänger-Themen 9
D Java-Pojekt in Eclispe erstellt -> Wie nun compilieren ? Java Basics - Anfänger-Themen 29
S Java TelephoneBookEntry search Java Basics - Anfänger-Themen 2
S Algorithmus java searchAll IKey Java Basics - Anfänger-Themen 4
Der Grütz Verständnisfrage zu Übung aus Java Kurs - Schaltjahr bestimmen Java Basics - Anfänger-Themen 2
F Frage betreff Programm mit dem man C++-Code in JAVA-Code übersetzen lassen kann Java Basics - Anfänger-Themen 2
L Brüche in java Java Basics - Anfänger-Themen 7
L Java operator % Java Basics - Anfänger-Themen 3
rafi072001 Integer Anomalie Java Java Basics - Anfänger-Themen 7
H Java file nicht gefunden Java Basics - Anfänger-Themen 5
M Packages erstellen mit Java-Editor Java Basics - Anfänger-Themen 6
mr.kottig Großeltern herausfinden Java - Map? Java Basics - Anfänger-Themen 16
D Java Übungsaufgaben Java Basics - Anfänger-Themen 6
A Standardabweichung in Java berechnen Java Basics - Anfänger-Themen 10
H Java fx Java Basics - Anfänger-Themen 3
J JAVA-Problem blockiert MEDIATHEKVIEW Java Basics - Anfänger-Themen 13
M Java Anfang Java Basics - Anfänger-Themen 13
D Java Thread wartet nur ein mal Java Basics - Anfänger-Themen 1
D Java Thread wartet nur ein mal Java Basics - Anfänger-Themen 0
I Java auf der Konsole Java Basics - Anfänger-Themen 5
T Die neuste Java jee Java Basics - Anfänger-Themen 12
Spandeli8 Erzeugte Objekte gegenüber Bildern hervorheben in Java Processing Java Basics - Anfänger-Themen 1
G Java Hilfe Java Basics - Anfänger-Themen 3
johnboyne Java Zeichen Trennen Java Basics - Anfänger-Themen 1
I Java Quicksort PAP Java Basics - Anfänger-Themen 2
K Buchstabenzähler Java (Anfänger) Java Basics - Anfänger-Themen 35
J Java List, Bitte um Hilfe Java Basics - Anfänger-Themen 15
J Java List, bitte um Hilfe Java Basics - Anfänger-Themen 3
E Kleines Java-Projekt für Anfänger Java Basics - Anfänger-Themen 10
A Schleifen in Java Java Basics - Anfänger-Themen 4
Alan6 Java Editor BMI Rechner Java Basics - Anfänger-Themen 7
C java.sql Statement kann nicht geschlossen werden Java Basics - Anfänger-Themen 9
A Java die richtige Programmiersprache für mein Projekt? Java Basics - Anfänger-Themen 1
P myClass?.method() in Java Java Basics - Anfänger-Themen 4
I Java String einlesen und auslesen Java Basics - Anfänger-Themen 11
Marc111111111 Selection Sort in Java?? Java Basics - Anfänger-Themen 6
NicoDeluxe Java RAM Management Java Basics - Anfänger-Themen 26
N Groß- und Kleinschreibung bei Java: void Methode Java Basics - Anfänger-Themen 1
T SelectionSort Java Java Basics - Anfänger-Themen 1
TimoN11 Frage zu Java-Vererbung (Cast) Java Basics - Anfänger-Themen 5
T Java Fx Java Basics - Anfänger-Themen 4
J Alle .java Dateien von einem Verzeichnis in eine Zip speichern Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
G Java Rabatt berechnen Java Basics - Anfänger-Themen 8
MPFeuer JAVA Expert-PDF Java Basics - Anfänger-Themen 1
M Java-Applet zur Mittelwertberechnung Java Basics - Anfänger-Themen 3
Abraham42 Berechnung der Kühlung Java Java Basics - Anfänger-Themen 12
J Java Queue mit default Werten erstellen Java Basics - Anfänger-Themen 4
F Erste Schritte java.util.Scanner: Beliebig langen Text per Paste in Console eingeben ? Java Basics - Anfänger-Themen 14
S Allgemeine Java Codes lesen und verstehen Java Basics - Anfänger-Themen 7
TimoN11 Mail Programm mit Java? Java Basics - Anfänger-Themen 1
TimoN11 Java spezielle Suchprobleme - Aufgabe Java Basics - Anfänger-Themen 5
I Java-Wort einlesen und ausgeben Java Basics - Anfänger-Themen 7
H Brauche Hilfe in Java Eclipse Programmieraufgabe Neuling Java Basics - Anfänger-Themen 3
JaVaN0oB java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 17
Abraham42 Sparguthaben JAVA Java Basics - Anfänger-Themen 4
TimoN11 Java Klassen Global einbinden Java Basics - Anfänger-Themen 1
H Binominalkoeffizient tail-rekursiv in java darstellen Java Basics - Anfänger-Themen 0
H Audio in Java Java Basics - Anfänger-Themen 3
I Erklärung zum Java Code Java Basics - Anfänger-Themen 2
AlexVo String zu Java Anweisung getString("*** java code ***") Java Basics - Anfänger-Themen 19
R Java (Eclipse) "Lagerverwaltung" HILFE Java Basics - Anfänger-Themen 13
TimoN11 Java - Eine oder mehrere Eingaben möglich machen Java Basics - Anfänger-Themen 6
M Rekursive Java-Methode Java Basics - Anfänger-Themen 13
M Java Spiel wie Wer wird Millionär Java Basics - Anfänger-Themen 1
bafou Dreieckszahlen in java Java Basics - Anfänger-Themen 3
P Best Practice Druck aus Java Anwendung in MacOs Java Basics - Anfänger-Themen 0
G Java 2-dimensionalen int-Array Summe Java Basics - Anfänger-Themen 2
B java.time Duration mit Kommazahl? Java Basics - Anfänger-Themen 4
Devin Wo kann man einen Java Lehrplan finden? Java Basics - Anfänger-Themen 5
KogoroMori21 Java Datum Differenz (kleiner Fehler) Java Basics - Anfänger-Themen 10
O Java Weinachtsbaum in einem Bilderramen Java Basics - Anfänger-Themen 5
F Java Programm, das kleine Buchstaben in einem String zählen soll und bei großen Buchstaben oder Sonderzeichen abbrechen soll. Java Basics - Anfänger-Themen 5
Gaudimagspam Dringend Java Hilfe benötigt Java Basics - Anfänger-Themen 19
M Java Kompilieren über Package grenzen hinaus Java Basics - Anfänger-Themen 4
N java.util.InputMismatchException Fehler Java Scanner Java Basics - Anfänger-Themen 1
Gaudimagspam BMI in Java implementieren Java Basics - Anfänger-Themen 38
C Was ist nötig für ein Java-Programm auf Server für Website Java Basics - Anfänger-Themen 18
F Fehlermeldung java.lang.NullPointerException Java Basics - Anfänger-Themen 4
S Sprung mit Java (GameGrid) Java Basics - Anfänger-Themen 9
Devin Wie lange braucht man um Java zu beherrschen und wie kann man es am schnellsten erlernen? Java Basics - Anfänger-Themen 7
G Java Klassen und Instanzmethoden Java Basics - Anfänger-Themen 15
Zrebna Frage zum "Referenzen-konzept" in Java Java Basics - Anfänger-Themen 8
C java.util Timer läuft zu langsam? Java Basics - Anfänger-Themen 1
T Klassendiagramm in Java überführen Java Basics - Anfänger-Themen 2
Gaudimagspam Caesars Code entziffern in Java Java Basics - Anfänger-Themen 8
V Gehalt berechnen in Java Java Basics - Anfänger-Themen 6
java3690 Java- liste füllen ud die werte addieren Java Basics - Anfänger-Themen 13
justemii Gehalt berechnen - Aufgabe Java-Programm Java Basics - Anfänger-Themen 9
P Mit iPad Java lernen Java Basics - Anfänger-Themen 15
W Java in Exe Datei umgewandelt, Ressourcen fehlen (Bilder und Audiodateien) Java Basics - Anfänger-Themen 1
N Best Practice How can I creat a programm with java under windows 10 in order to open an spreadsheet in libreoffice calc format Java Basics - Anfänger-Themen 11
T Start-Activity für Java Maven Web-Anwendung festlegen Java Basics - Anfänger-Themen 2
J Java FX - Label aktualisieren Java Basics - Anfänger-Themen 1
A Hilfe bei Java Projekt Java Basics - Anfänger-Themen 4
G Java Bruchrechner Addition, Multiplikation... Java Basics - Anfänger-Themen 12
M Java Einstellung von Apache POI für MS Word Erstellung mit Eclipse Java Basics - Anfänger-Themen 6
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Anzeige

Neue Themen


Oben