Метод write класса Writer
Метод write класса Writer записывает символы
в поток вывода. Класс Writer является абстрактным
базовым классом для всех символьных потоков вывода, поэтому
метод write доступен во всех его наследниках, например,
в FileWriter, BufferedWriter и
OutputStreamWriter. В первый параметр мы передаем
либо один символ в виде int, либо массив символов
char[], либо строку String. Во второй
параметр передается начальный индекс, а в третий - количество
символов для записи. Метод может выбрасывать исключение
IOException, поэтому его вызов нужно обрабатывать
или пробрасывать.
Синтаксис
writer.write(int c)
writer.write(char[] cbuf)
writer.write(char[] cbuf, int off, int len)
writer.write(String str)
writer.write(String str, int off, int len)
Пример
Давайте запишем один символ в файл с помощью
FileWriter и метода write:
import java.io.FileWriter;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
try (FileWriter writer = new FileWriter("test.txt"))
{
writer.write('a');
}
catch (IOException e)
{
System.out.println("Error: " + e.getMessage());
}
}
}
После выполнения кода в файле test.txt будет
записан один символ:
"a"
Пример
Давайте запишем целую строку в файл с помощью метода
write:
import java.io.FileWriter;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
try (FileWriter writer = new FileWriter("test.txt"))
{
writer.write("abcde");
}
catch (IOException e)
{
System.out.println("Error: " + e.getMessage());
}
}
}
После выполнения кода в файле test.txt будет
записана строка:
"abcde"
Пример
Давайте запишем часть строки, указав начальный индекс
и количество символов. Запишем символы со 1 по
4 (четыре символа):
import java.io.FileWriter;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
try (FileWriter writer = new FileWriter("test.txt"))
{
writer.write("abcde", 1, 3);
}
catch (IOException e)
{
System.out.println("Error: " + e.getMessage());
}
}
}
После выполнения кода в файле test.txt будет
записана подстрока:
"bcd"
Пример
Давайте запишем массив символов в файл с помощью метода
write:
import java.io.FileWriter;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
char[] chars = {'a', 'b', 'c', 'd', 'e'};
try (FileWriter writer = new FileWriter("test.txt"))
{
writer.write(chars);
}
catch (IOException e)
{
System.out.println("Error: " + e.getMessage());
}
}
}
После выполнения кода в файле test.txt будет
записан массив символов:
"abcde"
Пример
Давайте запишем символы в буфер с помощью
BufferedWriter и метода write:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
try (BufferedWriter writer = new BufferedWriter(new FileWriter("test.txt")))
{
writer.write("12345");
writer.newLine();
writer.write("abcde");
}
catch (IOException e)
{
System.out.println("Error: " + e.getMessage());
}
}
}
После выполнения кода в файле test.txt будут
записаны две строки:
"12345"
"abcde"