Java FileWriter-klasse
Java FileWriter-klasse
In deze zelfstudie leren we over Java FileWriter en zijn methoden aan de hand van voorbeelden.
De FileWriter
klasse van de java.io
pakket kan worden gebruikt om gegevens (in tekens) naar bestanden te schrijven.
Het verlengt de OutputStreamWriter
klasse.
Voordat je meer te weten komt over FileWriter
, zorg ervoor dat u op de hoogte bent van Java File.
Een FileWriter maken
Om een bestandsschrijver te maken, moeten we de Java.io.FileWriter
. importeren pakket eerst. Zodra we het pakket hebben geïmporteerd, kunnen we als volgt de bestandsschrijver maken.
FileWriter output = new FileWriter(String name);
Hier hebben we een bestandsschrijver gemaakt die wordt gekoppeld aan het bestand dat is opgegeven met de naam .
FileWriter input = new FileWriter(File fileObj);
Hier hebben we een bestandsschrijver gemaakt die wordt gekoppeld aan het bestand dat is opgegeven door het object van het bestand.
In het bovenstaande voorbeeld worden de gegevens opgeslagen met behulp van een standaard tekencodering.
Sinds Java 11 kunnen we echter het type tekencodering specificeren (UTF8 of UTF16 ) ook.
FileWriter input = new FileWriter(String file, Charset cs);
Hier hebben we de Charset
. gebruikt class om de tekencodering van de bestandsschrijver te specificeren.
Methoden van FileWriter
De FileWriter
class biedt implementaties voor verschillende methoden die aanwezig zijn in de Writer
klasse.
write()-methode
write()
- schrijft een enkel teken naar de schrijverwrite(char[] array)
- schrijft de karakters van de opgegeven array naar de schrijverwrite(String data)
- schrijft de opgegeven string naar de schrijver
Voorbeeld:FileWriter om gegevens naar een bestand te schrijven
import java.io.FileWriter;
public class Main {
public static void main(String args[]) {
String data = "This is the data in the output file";
try {
// Creates a FileWriter
FileWriter output = new FileWriter("output.txt");
// Writes the string to the file
output.write(data);
// Closes the writer
output.close();
}
catch (Exception e) {
e.getStackTrace();
}
}
}
In het bovenstaande voorbeeld hebben we een bestandsschrijver gemaakt met de naam output . De uitvoerlezer is gekoppeld aan de output.txt bestand.
FileWriter output = new FileWriter("output.txt");
Om gegevens naar het bestand te schrijven, hebben we de write()
. gebruikt methode.
Hier wanneer we het programma uitvoeren, de output.txt bestand is gevuld met de volgende inhoud.
This is a line of text inside the file.
getEncoding()-methode
De getEncoding()
methode kan worden gebruikt om het type codering te krijgen dat wordt gebruikt om gegevens te schrijven. Bijvoorbeeld,
import java.io.FileWriter;
import java.nio.charset.Charset;
class Main {
public static void main(String[] args) {
String file = "output.txt";
try {
// Creates a FileReader with default encoding
FileWriter output1 = new FileWriter(file);
// Creates a FileReader specifying the encoding
FileWriter output2 = new FileWriter(file, Charset.forName("UTF8"));
// Returns the character encoding of the reader
System.out.println("Character encoding of output1: " + output1.getEncoding());
System.out.println("Character encoding of output2: " + output2.getEncoding());
// Closes the reader
output1.close();
output2.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Uitvoer
The character encoding of output1: Cp1252 The character encoding of output2: UTF8
In het bovenstaande voorbeeld hebben we 2 bestandsschrijvers gemaakt met de naam output1 en output2 .
- uitvoer1 specificeert niet de tekencodering. Vandaar de
getEncoding()
methode retourneert de standaard tekencodering. - uitvoer2 specificeert de tekencodering, UTF8 . Vandaar de
getEncoding()
methode retourneert de opgegeven tekencodering.
Opmerking :We hebben de Charset.forName()
. gebruikt methode om het type tekencodering op te geven. Ga voor meer informatie naar Java Charset (officiële Java-documentatie).
close() Methode
Om de bestandsschrijver te sluiten, kunnen we de close()
. gebruiken methode. Zodra de close()
methode wordt aangeroepen, kunnen we de schrijver niet gebruiken om de gegevens te schrijven.
Andere methoden van FileWriter
Methode | Beschrijving |
---|---|
flush() | dwingt om alle gegevens in de schrijver naar de corresponderende bestemming te schrijven |
append() | voegt het opgegeven teken in bij de huidige schrijver |
Ga voor meer informatie naar Java FileWriter (officiële Java-documentatie).
Java