Класовете Java FileWriter и FileReader се използват за запис и четене на данни от текстови файлове (те са Поток от знаци класове). Препоръчва се не за да използвате класовете FileInputStream и FileOutputStream, ако трябва да четете и пишете текстова информация, тъй като това са класове на байтов поток.
FileWriter
FileWriter е полезен за създаване на файл, записващ знаци в него.
- Този клас наследява от класа OutputStream.
- Конструкторите на този клас приемат, че кодирането на знаци по подразбиране и размерът на байтовия буфер по подразбиране са приемливи. За да укажете сами тези стойности, конструирайте OutputStreamWriter на FileOutputStream.
- FileWriter е предназначен за писане на потоци от знаци. За запис на потоци от необработени байтове помислете за използването на FileOutputStream.
- FileWriter създава изходния файл, ако вече не е наличен.
Конструктори:
сравним интерфейс в java
- Този клас е наследен от класа InputStreamReader.
- Конструкторите на този клас приемат, че кодирането на знаци по подразбиране и размерът на байтовия буфер по подразбиране са подходящи. За да укажете сами тези стойности, конструирайте InputStreamReader на FileInputStream.
- FileReader е предназначен за четене на потоци от знаци. За четене на потоци от необработени байтове обмислете използването на FileInputStream.
Методи:
Четенето и писането се извършват символ по знак, което увеличава броя на I/O операциите и влияе върху производителността на системата. BufferedWriter може да се използва заедно с FileWriter за подобряване на скоростта на изпълнение.
Следващата програма описва как да създадете текстов файл с помощта на FileWriter
// 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
какво е азбучен номер
FileReader е полезен за четене на данни под формата на знаци от „текстов“ файл.
Конструктори:
csv файл чете java
Методи:
Параметри:
cbuf - Буфер за местоназначение
off - Отместване, при което да започнете да съхранявате знаци
len - Максимален брой знаци за четене
Параметри:
n - Броят знаци за пропускане
Следващата програма описва как да четете от „текстовия“ файл с помощта на FileReader
// 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(); } }
Създаване на тест