A Java FileWriter és FileReader osztályok szöveges fájlok írására és olvasására szolgálnak (ezek Karakterfolyam osztályok). Ajánlott nem a FileInputStream és FileOutputStream osztályok használatához, ha bármilyen szöveges információt kell olvasnia és írnia kell, mivel ezek Byte folyam osztályok.
FileWriter
A FileWriter hasznos karaktereket író fájl létrehozásához.
- Ez az osztály az OutputStream osztálytól örökli.
- Ennek az osztálynak a konstruktorai feltételezik, hogy az alapértelmezett karakterkódolás és az alapértelmezett bájtpufferméret elfogadható. Ezen értékek megadásához hozzon létre egy OutputStreamWriter-t egy FileOutputStream-en.
- A FileWriter karakterfolyamok írására szolgál. Nyers bájtok adatfolyamainak írásához fontolja meg a FileOutputStream használatát.
- A FileWriter létrehozza a kimeneti fájlt, ha az még nincs jelen.
Kivitelezők:
- Ez az osztály az InputStreamReader osztálytól örökölt.
- Ennek az osztálynak a konstruktorai feltételezik, hogy az alapértelmezett karakterkódolás és az alapértelmezett bájtpufferméret megfelelő. Ezen értékek megadásához hozzon létre egy InputStreamReader-t a FileInputStream-en.
- A FileReader karakterfolyamok olvasására szolgál. A nyers bájtok adatfolyamainak olvasásához fontolja meg a FileInputStream használatát.
Mód:
Az olvasás és az írás karakterenként történik, ami növeli az I/O műveletek számát és befolyásolja a rendszer teljesítményét. BufferedWriter a FileWriterrel együtt használható a végrehajtás sebességének javítására.
A következő program bemutatja, hogyan lehet szöveges fájlt létrehozni a FileWriter használatával
// Creating a text File using FileWriter import java.io.FileWriter; import java.io.IOException; class CreateFile { public static void main(String[] args) throws IOException { // Accept a string String str = 'File Handling in Java using '+ ' FileWriter and FileReader'; // attach a file to FileWriter FileWriter fw=new FileWriter('output.txt'); // read character wise from string and write // into FileWriter for (int i = 0; i < str.length(); i++) fw.write(str.charAt(i)); System.out.println('Writing successful'); //close the file fw.close(); } }
FileReader
A FileReader hasznos az adatok karakterek formájában történő olvasásához egy „szöveg” fájlból.
Kivitelezők:
Mód:
Paraméterek:
cbuf – Cél puffer
off – Eltolás, amelynél elkezdődik a karakterek tárolása
len – Az olvasható karakterek maximális száma
Paraméterek:
n – Az átugorandó karakterek száma
A következő program bemutatja, hogyan lehet olvasni a „szöveg” fájlból a FileReader segítségével
// Reading data from a file using FileReader import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; class ReadFile { public static void main(String[] args) throws IOException { // variable declaration int ch; // check if File exists or not FileReader fr=null; try { fr = new FileReader('text'); } catch (FileNotFoundException fe) { System.out.println('File not found'); } // read from FileReader till the end of file while ((ch=fr.read())!=-1) System.out.print((char)ch); // close the file fr.close(); } }
Kvíz létrehozása