Java FileWriter (ar piemēriem)

Šajā apmācībā mēs ar piemēru palīdzību uzzināsim par Java FileWriter un tā metodēm.

FileWriterNo klases java.iopaketē var izmantot, lai rakstītu datus (rakstzīmes) līdz failus.

Tas paplašina OutputStreamWriterklasi.

Pirms uzzināt vairāk par FileWriter, pārliecinieties, vai zināt par Java failu.

Izveidojiet FileWriter

Lai izveidotu failu rakstītāju, mums vispirms jāimportē Java.io.FileWriterpakotne. Kad pakotne ir importēta, šeit mēs varam izveidot failu rakstītāju.

1. Izmantojot faila nosaukumu

 FileWriter output = new FileWriter(String name); 

Šeit mēs esam izveidojuši failu rakstītāju, kas būs saistīts ar failu, kuru norāda nosaukums.

2. Izmantojot faila objektu

 FileWriter input = new FileWriter(File fileObj); 

Šeit mēs esam izveidojuši failu rakstītāju, kas būs saistīts ar faila objekta norādīto failu.

Iepriekš minētajā piemērā dati tiek glabāti, izmantojot kādu noklusējuma rakstzīmju kodējumu.

Tomēr kopš Java 11 mēs varam norādīt arī rakstzīmju kodēšanas veidu ( UTF8 vai UTF16 ).

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

Šeit mēs izmantojām Charsetklasi, lai norādītu failu rakstītāja rakstzīmju kodējumu.

FileWriter metodes

FileWriterKlase nodrošina implementācijas dažādām metodēm prezentēt šajā Writerklasē.

write () metode

  • write() - raksta rakstniekam vienu varoni
  • write(char() array) - raksta rakstniekam rakstzīmes no norādītā masīva
  • write(String data) - raksta rakstniekam norādīto virkni

Piemērs: FileWriter, lai ierakstītu datus failā

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

Iepriekš minētajā piemērā mēs esam izveidojuši failu rakstītāju ar nosaukumu output. Izejas lasītājs ir saistīts ar failu output.txt .

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

Lai ierakstītu datus failā, mēs izmantojām write()metodi.

Šeit, palaižot programmu, fails output.txt tiek aizpildīts ar šādu saturu.

 This is a line of text inside the file. 

getEncoding () metode

getEncoding()Metodi var izmantot, lai iegūtu kodēšanas veids, kas tiek izmantots, lai rakstītu datus. Piemēram,

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

Rezultāts

 Output1: Cp1252 rakstzīmju kodējums: output2: UTF8 

Iepriekš minētajā piemērā mēs esam izveidojuši 2 failu rakstītājus ar nosaukumu output1 un output2.

  • output1 nenorāda rakstzīmju kodējumu. Tādējādi getEncoding()metode atgriež noklusējuma rakstzīmju kodējumu.
  • output2 norāda rakstzīmju kodējumu UTF8 . Tādējādi getEncoding()metode atgriež norādīto rakstzīmju kodējumu.

Piezīme . Mēs izmantojām Charset.forName()metodi, lai norādītu rakstzīmju kodēšanas veidu. Lai uzzinātu vairāk, apmeklējiet Java Charset (oficiālā Java dokumentācija).

aizvērt () metode

Lai aizvērtu failu rakstītāju, mēs varam izmantot close()metodi. Kad close()metode ir izsaukta, mēs nevaram izmantot rakstītāju datu rakstīšanai.

Citas FileWriter metodes

Metode Apraksts
flush() liek rakstīt visus rakstītājā esošos datus uz attiecīgo galamērķi
append() ievieto norādīto rakstzīmi pašreizējam rakstītājam

Lai uzzinātu vairāk, apmeklējiet Java FileWriter (oficiālā Java dokumentācija).

Interesanti raksti...