U ovom ćemo uputstvu uz primjere naučiti o Java FileWriteru i njegovim metodama.
FileWriter
Razred java.io
paket može se koristiti podacima pisati (u znakovima) do datoteke.
Proširuje OutputStreamWriter
razred.
Prije nego što naučite više o FileWriter
, pobrinite se da znate o Java datoteci.
Stvorite FileWriter
Da bismo stvorili program za pisanje datoteka, prvo moramo uvesti Java.io.FileWriter
paket. Nakon što uvozimo paket, evo kako možemo stvoriti program za pisanje datoteka.
1. Upotreba naziva datoteke
FileWriter output = new FileWriter(String name);
Ovdje smo stvorili program za pisanje datoteka koji će biti povezan s datotekom navedenom u nazivu.
2. Korištenje objekta datoteke
FileWriter input = new FileWriter(File fileObj);
Ovdje smo stvorili program za pisanje datoteka koji će biti povezan s datotekom navedenom u objektu datoteke.
U gornjem primjeru podaci se pohranjuju pomoću nekog zadanog kodiranja znakova.
Međutim, od Jave 11 možemo odrediti i vrstu kodiranja znakova ( UTF8 ili UTF16 ).
FileWriter input = new FileWriter(String file, Charset cs);
Ovdje smo Charset
klasu koristili za specificiranje kodiranja znakova programa za pisanje datoteka.
Metode FileWriter-a
FileWriter
Klasa pruža implementacije za različite metode prezentirati u Writer
razredu.
metoda write ()
write()
- napiše jedan lik piscuwrite(char() array)
- zapisuje znakove iz navedenog niza u pisacwrite(String data)
- zapisuje navedeni niz piscu
Primjer: FileWriter za pisanje podataka u datoteku
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(); ) ) )
U gornjem primjeru stvorili smo program za pisanje datoteka koji se zove output. Izlazni čitač povezan je s datotekom output.txt .
FileWriter output = new FileWriter("output.txt");
Za pisanje podataka u datoteku koristili smo write()
metodu.
Ovdje kada pokrenemo program, datoteka output.txt puni se sljedećim sadržajem.
This is a line of text inside the file.
getEncoding () metoda
getEncoding()
Metoda se može koristiti kako bi dobili tip kodiranja koji se koristi podacima pisati. Na primjer,
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(); ) ) )
Izlaz
Kodiranje znakova izlaza1: Cp1252 Kodiranje znakova izlaza2: UTF8
U gornjem primjeru stvorili smo 2 program za pisanje datoteka koji se zove output1 i output2.
- output1 ne navodi kodiranje znakova. Stoga
getEncoding()
metoda vraća zadano kodiranje znakova. - output2 navodi kodiranje znakova, UTF8 . Stoga
getEncoding()
metoda vraća navedeno kodiranje znakova.
Napomena : Charset.forName()
Metodom smo odredili vrstu kodiranja znakova. Da biste saznali više, posjetite Java Charset (službena Java dokumentacija).
close () Metoda
Da bismo zatvorili program za pisanje datoteka, možemo koristiti close()
metodu. Jednom kada se close()
metoda pozove, ne možemo koristiti zapisnik za upisivanje podataka.
Ostale metode FileWriter-a
Metoda | Opis |
---|---|
flush() | prisiljava upisivanje svih podataka prisutnih u zapisu na odgovarajuće odredište |
append() | umetne navedeni lik u trenutni pisac |
Da biste saznali više, posjetite Java FileWriter (službena Java dokumentacija).