Heim > Java > javaLernprogramm > Warum schreibt mein Java BufferedWriter nicht alle Daten?

Warum schreibt mein Java BufferedWriter nicht alle Daten?

Mary-Kate Olsen
Freigeben: 2024-12-18 18:10:11
Original
715 Leute haben es durchsucht

Why Doesn't My Java BufferedWriter Write All the Data?

BufferedWriter gibt Daten nicht vollständig aus

In Java wird die BufferedWriter-Klasse häufig zum Schreiben von Text auf die Festplatte verwendet. Obwohl zur Verbesserung der Leistung Puffertechniken eingesetzt werden, kann es vorkommen, dass nicht alle vorgesehenen Daten in die Ausgabedatei geschrieben werden.

Ein solcher Fall tritt auf, wenn der BufferedWriter-Puffer seine Standardgröße überschreitet. Standardmäßig ist die Puffergröße auf 8192 Zeichen eingestellt, was problemlos Hunderte von Datenzeilen aufnehmen kann. Wenn die Datenmenge jedoch die Pufferkapazität überschreitet, werden die Daten erst dann in die Datei geschrieben, wenn der Puffer explizit geleert wurde.

Problembeschreibung

Die Das in der Frage beschriebene Programm liest Daten aus einer CSV-Datei und wandelt sie in SQL-Befehle zum Einfügen in eine Tabelle um. Das Programm scheint ordnungsgemäß zu funktionieren, bis es mitten im Konvertierungsprozess plötzlich aufhört, in die Ausgabedatei zu schreiben.

Lösung

Um dieses Problem zu beheben, ist es wichtig, das Programm zu schließen der OutputStream, der dem BufferedWriter zugeordnet ist. Diese Aktion erzwingt das Leeren der verbleibenden Daten und stellt sicher, dass sie in die Ausgabedatei geschrieben werden. Die folgende Codezeile sollte hinzugefügt werden, bevor das Programm beendet wird:

out.close();
Nach dem Login kopieren

Durch das Schließen des OutputStream werden die gepufferten Daten sofort in die Datei geschrieben, wodurch das Problem der abgeschnittenen Ausgabe behoben wird.

Das obige ist der detaillierte Inhalt vonWarum schreibt mein Java BufferedWriter nicht alle Daten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage