Java BufferedWriter (med exempel)

I den här handledningen lär vi oss om Java BufferedWriter och dess metoder med hjälp av exempel.

Paketets BufferedWriterklass java.iokan användas med andra författare för att skriva data (i tecken) mer effektivt.

Det utvidgar den abstrakta klassen Writer.

Arbeta med BufferedWriter

Den BufferedWriterhar en intern buffert på 8192 tecken .

Under skrivoperationen skrivs tecknen till den interna bufferten istället för disken. När bufferten är fylld eller författaren är stängd skrivs hela tecknen i bufferten till disken.

Följaktligen minskar antalet kommunikationer till skivan. Det är därför det är snabbare att skriva tecken BufferedWriter.

Skapa en BufferedWriter

För att skapa ett BufferedWritermåste vi först importera java.io.BufferedWriterpaketet. När vi väl har importerat paketet här kan vi skapa den buffrade författaren.

 // Creates a FileWriter FileWriter file = new FileWriter(String name); // Creates a BufferedWriter BufferedWriter buffer = new BufferedWriter(file); 

I exemplet ovan har vi skapat en BufferedWriternamngiven buffert med den FileWriternamngivna filen.

Här har den interna bufferten i BufferedWriterstandardstorleken 8192 tecken. Vi kan dock också specificera storleken på den interna bufferten.

 // Creates a BufferedWriter with specified size internal buffer BufferedWriter buffer = new BufferedWriter(file, int size); 

Bufferten hjälper till att skriva tecken till filerna mer effektivt.

Metoder för BufferedWriter

Den BufferedWriterklass erbjuder implementeringar för olika metoder som finns i Writer.

skriv () Metod

  • write() - skriver en enda karaktär till författarens interna buffert
  • write(char() array) - skriver karaktärerna från den angivna matrisen till författaren
  • write(String data) - skriver den angivna strängen till författaren

Exempel: BufferedWriter för att skriva data till en fil

 import java.io.FileWriter; import java.io.BufferedWriter; public class Main ( public static void main(String args()) ( String data = "This is the data in the output file"; try ( // Creates a FileWriter FileWriter file = new FileWriter("output.txt"); // Creates a BufferedWriter BufferedWriter output = new BufferedWriter(file); // Writes the string to the file output.write(data); // Closes the writer output.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) ) 

I exemplet ovan har vi skapat en buffrad författare med namnet output tillsammans med FileWriter. Den buffrade författaren är länkad till filen output.txt .

 FileWriter file = new FileWriter("output.txt"); BufferedWriter output = new BufferedWriter(file); 

För att skriva data till filen har vi använt write()metoden.

Här när vi kör programmet fylls output.txt- filen med följande innehåll.

 This is a line of text inside the file. 

flush () Metod

För att rensa den interna bufferten kan vi använda flush()metoden. Denna metod tvingar författaren att skriva all data som finns i bufferten till målfilen.

Antag till exempel att vi har en tom fil med namnet output.txt .

 import java.io.FileWriter; import java.io.BufferedWriter; public class Main ( public static void main(String() args) ( String data = "This is a demo of the flush method"; try ( // Creates a FileWriter FileWriter file = new FileWriter(" flush.txt"); // Creates a BufferedWriter BufferedWriter output = new BufferedWriter(file); // Writes data to the file output.write(data); // Flushes data to the destination output.flush(); System.out.println("Data is flushed to the file."); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Produktion

 Data spolas till filen. 

När vi kör programmet fylls filen output.txt med texten som representeras av strängdata.

close () Metod

För att stänga den buffrade författaren kan vi använda close()metoden. När close()metoden har anropats kan vi inte använda författaren för att skriva data.

Andra metoder för BufferedWriter

Metod Beskrivning
newLine() infogar en ny rad till författaren
append() infogar det angivna tecknet i den aktuella författaren

För att lära dig mer, besök Java BufferedWriter (officiell Java-dokumentation).

Intressanta artiklar...