Класс FileWriter в Java
FileWriter - это представление символа Java.io. Это означает, что он может использоваться для написания символов. Он расширяет OutputStreamWriter, который является мостом от потоков символов к потокам байтов: записываемые в него символы закодированы в байты с использованием указанной кодировки.
Кодировка символов
Этот класс предполагает, что вы хотите декодировать байты в файле, используя кодировку по умолчанию для программы. Это не всегда может быть то, что вы хотите, и вы не можете его изменить. Итак, если вы хотите указать другую схему декодирования символов, постарайтесь избежать этого класса. OutputStreamWriter - лучший вариант. OutputStreamWriter позволяет указать схему кодирования символов, используемую при записи байтов в основной файл.
Пример
import Java.util.*;
import Java.io.*;
public class TestClass{
public static void main(String[] args) {
try {
FileWriter fw = new FileWriter("D:\\test.txt");
fw.write("Line No. 1");
fw.write("Line No. 2");
fw.write("Line No. 3");
fw.write("Line No. 4");
fw.close();
}
catch (IOException e){
e.printStackTrace();
}
}
}
Java FileWriter с режимом добавления
Когда вы создаете файл с помощью Java FileWriter Class, вы можете решить, хотите ли вы перезаписать существующий файл с тем же именем или если вы хотите добавить к существующему файлу. Вы решаете это, выбирая используемый конструктор FileWriter. Когда в качестве второго аргумента FileWriter передается true, чтобы включить режим «добавить».
FileWriter fw = new FileWriter(file);
В приведенном выше коде все существующее содержимое будет переопределено.
FileWriter fw = new FileWriter(file,true);
Над кодом сохраняйте существующий контент и добавляйте новый контент в конец файла.
Пример
import Java.util.*;
import Java.io.*;
public class TestClass{
public static void main(String[] args) {
try {
FileWriter fw = new FileWriter("D:\\test.txt",true);
fw.write("Line No. 5");
fw.write("Line No. 6");
fw.close();
}
catch (IOException e){
e.printStackTrace();
}
}
}
