Класс 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(); } } }