Java FileWriter (s příklady)

V tomto výukovém programu se na příkladech seznámíme s Java FileWriter a jeho metodami.

FileWriterTřída java.ioobalu může být použit na data zapisovat (ve znacích) na soubory.

Rozšiřuje OutputStreamWritertřídu.

Než se dozvíte více o FileWriter, ujistěte se, že víte o souboru Java.

Vytvořte FileWriter

Abychom mohli vytvořit zapisovač souborů, musíme Java.io.FileWriternejprve importovat balíček. Jakmile naimportujeme balíček, můžeme vytvořit zapisovač souborů.

1. Použití názvu souboru

 FileWriter output = new FileWriter(String name); 

Zde jsme vytvořili zapisovač souborů, který bude propojen se souborem zadaným jménem.

2. Použití objektu souboru

 FileWriter input = new FileWriter(File fileObj); 

Zde jsme vytvořili zapisovač souborů, který bude propojen se souborem určeným objektem souboru.

Ve výše uvedeném příkladu jsou data uložena pomocí nějakého výchozího kódování znaků.

Od Javy 11 však můžeme specifikovat také typ kódování znaků ( UTF8 nebo UTF16 ).

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

Tady jsme použili Charsettřídu k určení kódování znaků zapisovače souborů.

Metody FileWriter

FileWriterTřída poskytuje implementace pro různé metody prezentovat ve Writertřídě.

metoda write ()

  • write() - zapíše spisovateli jeden znak
  • write(char() array) - zapíše znaky ze zadaného pole do zapisovače
  • write(String data) - zapíše zadaný řetězec do zapisovače

Příklad: FileWriter pro zápis dat do souboru

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

Ve výše uvedeném příkladu jsme vytvořili zapisovač souborů s názvem output. Výstupní čtečka je propojena se souborem output.txt .

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

K zápisu dat do souboru jsme použili write()metodu.

Tady, když spustíme program, je soubor output.txt naplněn následujícím obsahem.

 This is a line of text inside the file. 

Metoda getEncoding ()

getEncoding()Způsob může být použit k získání typ kódování, které se používá k zápisu dat. Například,

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

Výstup

 Kódování znaků výstupu1: Cp1252 Kódování znaků výstupu2: UTF8 

Ve výše uvedeném příkladu jsme vytvořili 2 zapisovač souborů s názvem output1 a output2.

  • output1 neurčuje kódování znaků. Proto getEncoding()metoda vrací výchozí kódování znaků.
  • output2 určuje kódování znaků, UTF8 . Proto getEncoding()metoda vrací zadané kódování znaků.

Poznámka : Charset.forName()Metodu jsme použili k určení typu kódování znaků. Chcete-li se dozvědět více, navštivte Java Charset (oficiální dokumentace Java).

metoda close ()

Chcete-li zavřít zapisovač souborů, můžeme použít close()metodu. Jakmile je close()metoda volána, nemůžeme použít zapisovač k zápisu dat.

Další metody FileWriter

Metoda Popis
flush() nutí zapsat všechna data přítomná ve vypalovačce do odpovídajícího cíle
append() vloží zadaný znak do aktuálního zapisovače

Další informace najdete v Java FileWriter (oficiální dokumentace Java).

Zajímavé články...