Java FileWriter (z primeri)

V tej vadnici bomo s pomočjo primerov spoznali Java FileWriter in njegove metode.

FileWriterRazred java.iopaket se lahko uporablja za podatke za pisanje (v znakih) do datotek.

Razširja OutputStreamWriterrazred.

Preden se naučite več o tem FileWriter, ne pozabite vedeti o datoteki Java.

Ustvarite FileWriter

Če želite ustvariti zapisovalnik datotek, moramo najprej uvoziti Java.io.FileWriterpaket. Ko uvozimo paket, tukaj je opisano, kako lahko ustvarimo zapisovalnik datotek.

1. Uporaba imena datoteke

 FileWriter output = new FileWriter(String name); 

Tu smo ustvarili zapisovalnik datotek, ki bo povezan z datoteko, določeno z imenom.

2. Uporaba predmeta datoteke

 FileWriter input = new FileWriter(File fileObj); 

Tu smo ustvarili zapisovalnik datotek, ki bo povezan z datoteko, ki jo določa predmet datoteke.

V zgornjem primeru so podatki shranjeni z uporabo nekega privzetega kodiranja znakov.

Ker pa Java 11 lahko določimo tudi vrsto kodiranja znakov ( UTF8 ali UTF16 ).

 FileWriter input = new FileWriter(String file, Charset cs); 

Tu smo uporabili Charsetrazred za določanje kodiranja znakov zapisovalnika datotek.

Metode FileWriter

FileWriterRazred določa izvedb za različne načine predstaviti v Writerrazredu.

metoda write ()

  • write() - piše pisatelju en sam lik
  • write(char() array) - zapisuje znake iz določene matrike v zapisovalnik
  • write(String data) - zapiše določen niz v zapisovalnik

Primer: FileWriter za zapisovanje podatkov v datoteko

 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(); ) ) ) 

V zgornjem primeru smo ustvarili zapisovalnik datotek z imenom output. Izhodni čitalnik je povezan z datoteko output.txt .

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

Za zapisovanje podatkov v datoteko smo uporabili write()metodo.

Ko zaženemo program, je datoteka output.txt napolnjena z naslednjo vsebino.

 This is a line of text inside the file. 

metoda getEncoding ()

Z getEncoding()metodo lahko dobimo vrsto kodiranja, ki se uporablja za zapisovanje podatkov. Na primer

 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(); ) ) ) 

Izhod

 Kodiranje znakov izhoda1: Cp1252 Kodiranje znakov izhoda2: UTF8 

V zgornjem primeru smo ustvarili 2 zapisovalnika datotek z imenom output1 in output2.

  • output1 ne določa kodiranja znakov. Zato getEncoding()metoda vrne privzeto kodiranje znakov.
  • output2 določa kodiranje znakov, UTF8 . Zato getEncoding()metoda vrne določeno kodiranje znakov.

Opomba : Z Charset.forName()metodo smo določili vrsto kodiranja znakov. Če želite izvedeti več, obiščite Java Charset (uradna dokumentacija Java).

metoda close ()

Za zapiranje zapisovalnika datotek lahko uporabimo close()metodo. Ko je close()metoda enkrat poklicana, ne moremo uporabiti zapisovalnika za zapis podatkov.

Druge metode FileWriter

Metoda Opis
flush() prisili, da vse podatke v zapisovalniku zapiše na ustrezen cilj
append() vstavi določen znak trenutnemu zapisovalniku

Če želite izvedeti več, obiščite Java FileWriter (uradna dokumentacija Java).

Zanimive Članki...