Java erbjuder ett fåtal objekt till process input och output . En av dessa kommer från " buffras " klass av objekt , till BufferedWriter . I BufferedWriter innehåller en text buffert som hanterar programmerare produktion snarare än att skriva ut direkt till systemet . Som med andra klasser , kommer BufferedWriter med en default konstruktor och med egna konstruktörer . Dessa konstruktörer tillåter programmeraren att använda en storlek standard buffert eller tillhandahålla en av hennes egna , beroende på applikation . BufferedWriter
BufferedWriter klassen utökar " Writer " klass . Denna klass ger programmerare ett sätt att hantera programutbud genom en särskild utdataström . Dock gör Writer klassystemet samtal att omedelbart visa tecken till skärmen , vilket kan leda till system nedgång . I stället innehåller det BufferedWriter en text buffert för att hålla text, som det kan skicka över en enda systemanrop . Följaktligen buffrad utgång genom BufferedWriter klassen erbjuder effektivare programkörning än den enkla Writer klassen .
BufferedWriter Defaults
BufferedWriter klassen levereras med två konstruktorer . Den standardkonstruktor tillåter programmeraren att skapa en BufferedWriter objekt som innehåller ett Writer objekt . Denna instans av BufferedWriter klassen kommer också att innehålla en buffert med en standard storlek 8,192 tecken . En särskild konstruktor kan också programmeraren att leverera en ny storlek tillsammans med författaren objektet .
Ändra BufferedWriter Default Size
Programmeraren kan skapa den buffrade objektet med en ny storlek genom att leverera den nya storleken till konstruktorn . Först måste programmeraren ger alltid ett Writer objekt , som sköter produktionen av programmet . Sedan förklarar programmeraren en BufferedWriter objekt . Som en del av förklaringen , förser programmeraren Writer objektet och en ny standard buffer size :
Writer w = ny FileWriter ( filnamnet ) , //en fil författare objectBufferedWriter br = new BufferedWriter ( w , 4000 ) ; Addera Använda BufferedWriter med standardinställningar och Förutsatt buffertstorlekar
Använda BufferedWriter objekten innebär att förstå bufferten storlek . Normalt kommer BufferedWriter skriver sin buffrade text , eller " flush " bufferten , när det fyller . Däremot kan programmeraren programmera även manuell spolning operationer i koden . Exempelvis öppnar följande kod en fil med 50 tecken och skriver den till en ny fil . Den förvalda BufferedWriter kommer att spola en gång under sin skrivoperation , medan den modifierade BufferedWriter kommer att spola två gånger :
Writer fw = nya FileWriter ( " test2.txt " ) ; Reader fr = nya FileReader ( " test.txt " ;) ;
BufferedWriter BR1 = BufferedWriter ( fw , 50 ); BufferedWriter BR2 = BufferedWriter ( fw , 25 ) ;
String s = fr.readline ();
br1.write ( s ) , br2.write (s ) ,