Java PrintWriter (med exempel)

I denna handledning lär vi oss om Java PrintWriter och dess utskriftsmetoder () och utskriftsf () med hjälp av exempel.

Paketets PrintWriterklass java.iokan användas för att skriva utdata i en vanligt läsbar form (text).

Det utvidgar den abstrakta klassen Writer.

Arbeta med PrintWriter

Till skillnad från andra författare, PrintWriteromvandlar de primitiva uppgifter ( int, float, char, etc.) in i textformat. Den skriver sedan den formaterade informationen till författaren.

Även PrintWriterklassen inte något undantag input / output inte kasta. Istället måste vi använda checkError()metoden för att hitta eventuella fel i den.

Obs : I PrintWriterklassen har också en funktion av auto spolning. Det betyder att det tvingar författaren att skriva all data till destinationen om någon av metoderna println()eller printf()kallas.

Skapa en PrintWriter

För att skapa en skrivare måste vi importera java.io.PrintWriterpaketet först. När vi väl har importerat paketet här kan vi skapa skrivare.

1. Använda andra författare

 // Creates a FileWriter FileWriter file = new FileWriter("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush); 

Här,

  • Vi har skapat en skrivare som skriver data till filen som representeras av FileWriter
  • autoFlush är en valfri parameter som anger om automatisk spolning ska utföras eller inte

2. Använda andra utflöden

 // Creates a FileOutputStream FileOutputStream file = new FileOutputStream("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush); 

Här,

  • Vi har skapat en skrivare som skriver data till filen som representeras av FileOutputStream
  • autoFlush är en valfri parameter som anger om automatisk spolning ska utföras eller inte

3. Använda filnamn

 // Creates a PrintWriter PrintWriter output = new PrintWriter(String file, boolean autoFlush); 

Här,

  • Vi har skapat en skrivare som skriver data till den angivna filen
  • autoFlush är en valfri boolesk parameter som anger om automatisk spolning ska utföras eller inte

Obs! I alla ovanstående fall PrintWriterskriver informationen till filen med hjälp av standardteckenkodning. Vi kan dock också ange teckenkodning ( UTF8 eller UTF16 ).

 // Creates a PrintWriter using some character encoding PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs); 

Här har vi använt Charset-klassen för att specificera teckenkodningen. För mer information, besök Java Charset (officiell Java-dokumentation).

Metoder för PrintWriter

I PrintWriterklassen tillhandahåller olika metoder som tillåter oss att skriva ut data till utgången.

print () Metod

  • print() - skriver ut de angivna uppgifterna till författaren
  • println() - skriver ut data till författaren tillsammans med en ny radkaraktär i slutet

Till exempel,

 import java.io.PrintWriter; class Main ( public static void main(String() args) ( String data = "This is a text inside the file."; try ( PrintWriter output = new PrintWriter("output.txt"); output.print(data); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

I exemplet ovan har vi skapat en skrivare som heter output. Denna skrivare är länkad till filen output.txt .

 PrintWriter output = new PrintWriter("output.txt"); 

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

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

 This is a text inside the file. 

printf () Metod

Den printf()metoden kan användas för att skriva ut den formaterade strängen. Den innehåller två parametrar: formaterad sträng och argument. Till exempel,

 printf("I am %d years old", 25); 

Här,

  • Jag är %dår gammal är en formaterad sträng
  • %d är heltalsdata i den formaterade strängen
  • 25 är ett argument

Den formaterade strängen innehåller både text och data. Och argumenten ersätter data i den formaterade strängen.

Därför ersätts % d med 25 .

Exempel: printf () Metod med PrintWriter

 import java.io.PrintWriter; class Main ( public static void main(String() args) ( try ( PrintWriter output = new PrintWriter("output.txt"); int age = 25; output.printf("I am %d years old.", age); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

I exemplet ovan har vi skapat en skrivare som heter output. Utskriftsförfattaren är länkad till filen output.txt .

 PrintWriter output = new PrintWriter("output.txt"); 

För att skriva ut den formaterade texten till filen har vi använt printf()metoden.

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

 I am 25 years old. 

Andra metoder för skrivmaskin

Metod Beskrivning
close() stänger skrivaren
checkError() kontrollerar om det finns ett fel i författaren och returnerar ett booleskt resultat
append() lägger till de angivna uppgifterna till författaren

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

Intressanta artiklar...