Nwlapcug.com


La dimensione del Buffer predefinito per BufferedWriter

Java offre pochi oggetti per l'elaborazione di input e output. Uno di questi deriva dalla classe "tamponata" di oggetti, il BufferedWriter. Il BufferedWriter include un buffer di testo che gestisce output programmatore piuttosto che stampa direttamente al sistema. Come con altre classi, il BufferedWriter viene fornito con un costruttore predefinito e con costruttori personalizzati. Questi costruttori consentono al programmatore di utilizzare una dimensione di buffer predefinito o fornire uno di suo, a seconda dell'applicazione.

BufferedWriter

La classe BufferedWriter estende la classe di "Writer". Questa classe offre ai programmatori un modo per gestire l'output del programma attraverso un flusso di output specificato. Tuttavia, la classe del Writer rende chiamate di sistema per visualizzare immediatamente i caratteri sullo schermo, che può causare il rallentamento del sistema. Invece, il BufferedWriter contiene un buffer di testo per contenere il testo, che è possibile inviare attraverso una chiamata di sistema singolo. Di conseguenza, uscita bufferizzata tramite la classe BufferedWriter offre l'esecuzione del programma più efficiente rispetto alla semplice classe di Writer.

Impostazioni predefinite BufferedWriter

La classe BufferedWriter è dotato di due costruttori. Il costruttore predefinito consente al programmatore di creare un oggetto BufferedWriter che contiene un oggetto Writer. Questa istanza della classe BufferedWriter conterrà anche un buffer con una dimensione predefinita di 8.192 caratteri. Un costruttore speciale consente inoltre al programmatore di fornire una nuova dimensione insieme all'oggetto Writer.

Modificare dimensioni di Default BufferedWriter

Il programmatore può creare l'oggetto memorizzato nel buffer con una nuova dimensione fornendo le nuove dimensioni al costruttore. In primo luogo, il programmatore deve sempre fornire un oggetto Writer, che consente di gestire l'output del programma. Quindi, il programmatore dichiara un oggetto BufferedWriter. Come parte della dichiarazione, il programmatore fornisce l'oggetto Writer e una nuova dimensione del buffer:

Scrittore w = nuovo FileWriter(filename); un oggetto di scrittura di file
BufferedWriter br = new BufferedWriter (w, 4000);

Utilizzando BufferedWriter con impostazioni predefinite e dimensioni del Buffer fornito

Utilizzando gli oggetti BufferedWriter implica la comprensione la dimensione del buffer. Normalmente, il BufferedWriter sarà scrivere il testo memorizzato nel buffer, o "svuotare" il buffer, quando si riempie. Tuttavia, il programmatore anche possibile programmare le operazioni di lavaggio manuale nel codice. Ad esempio, il codice seguente apre un file con 50 caratteri e lo scrive in un nuovo file. Il valore predefinito BufferedWriter verrà svuotato una volta durante l'operazione di scrittura, mentre il BufferedWriter modificate verrà svuotato due volte:

Scrittore fw = nuovo FileWriter("test2.txt");
Lettore fr = nuovo FileReader("test.txt");

BufferedWriter br1 = BufferedWriter (fw, 50);
BufferedWriter br2 = BufferedWriter (fw, 25);

String s = fr.readline();

BR1.Write(s);
BR2.Write(s);