Java BufferedOutputStream-Beispiel

Wenn Sie eine sehr E/A-intensive Anwendung schreiben, die große Datenmengen in die Dateien schreiben muss, müssen Sie eine Art Pufferung durchführen, um die Leistung zu verbessern. Hier BufferedOutputStream wird hilfreich sein, um den Zeichenstrom in eine Datei zu schreiben, die intern einen Puffer zur Verbesserung der Leistung verwaltet. Diese Klasse muss mit dem FileOutputStream umschlossen werden, um die Datei zu öffnen. BufferedOutputStream verfügt über die folgenden zwei Konstruktoren.

  • BufferedOutputStream(OutputStream out) – Erstellt einen neuen gepufferten Ausgabestream, um Daten in den angegebenen zugrunde liegenden Ausgabestream zu schreiben.
  • BufferedOutputStream(OutputStream out, int size) – Erstellt einen neuen gepufferten Ausgabestream, um Daten mit der angegebenen Puffergröße in den angegebenen zugrunde liegenden Ausgabestream zu schreiben.

Es erbt alle Methoden vom FileOutputStream und definiert die wenigen neuen Methoden.

  • Flush() – Leert diesen gepufferten Ausgabestream.
  • write(byte() b, int off, int len) – Schreibt len ​​Bytes aus dem angegebenen Byte-Array, beginnend bei Offset Off, in diesen gepufferten Ausgabestream.
  • write(int b) – Schreibt das angegebene Byte in diesen gepufferten Ausgabestream.

Schauen wir uns das Beispiel an, um zu verstehen, wie BufferedOutputStream verwendet wird.

package javabeat.net.io;

import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

/**
 * Java BufferedOutputStream Example
 *
 * @author Krishna
 *
 */
public class BufferedOutputStreamExample {
	public static void main (String args()) throws IOException{
		//Creating file output stream instance
		OutputStream file = new FileOutputStream("TextFile.txt");

		//Creating buffered output stream instance
		BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(file);
		String str = "This is example for BufferedOutputStream";

		//Gets byte array
		byte b() = str.getBytes();

		//Writing byte array to a file
		bufferedOutputStream.write(b);

		//Writing a single byte
		bufferedOutputStream.write(b(0));

		//Writing a sequence of byte
		bufferedOutputStream.write(b, 5, 10);

		//Closing the stream
		bufferedOutputStream.close();
	}
}

Wenn Sie das obige Programm ausführen, werden die Dateinamen „TextFile.txt“ mit den angegebenen Zeichenfolgewerten erstellt.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen