FileStream в Java: чтение и запись файлов

FileOutputStream, FileInputStreamдля чтения файла и записи в файл.

В конструкторе должен быть указываем путь к файлу с которым будем совершать ввод/вывод.

Пример программы:

import java.io.*; import java.util.*; class FileStreamLesson { public static void main(String[] args) { try { // FileOutputStream – для записи в файл. В конструктор // FileOutputStream передаем в виде строки путь к файлу // в который будем записывать. // Если полноценный путь не указан, а только файл, значит // файл, который мы собираемся читать/записывать находится // в той же папке где и текущий файл java в который вы // сейчас смотрите. FileOutputStream fileOutputStream = new FileOutputStream(“person.txt”); // FileInputStream – для чтения файла. Также передаем путь FileInputStream fileInputStream = new FileInputStream(“person.txt”); // Поскольку это OutputStream и InputStream значит, что // читать из файла или записывать в файл будем байты. // Поэтому чтобы записать в файл строку String // ее сначала нужно преобразовать в массив байтов, // и а его уже записывать в файл. Ниже это делаем. // Строка которую будем записывать String str = “Some Text”; // преобразовываем строку в байты byte[] buff = str.getBytes(); // через поток записи в файл записываем туда массив байт fileOutputStream.write(buff, 0, buff.length); // Теперь прочитаем из файла person.txt // только что нами записанную строку. // available возвращает текущее количество байтов в файле // и пока оно больше нуля цикл продолжается. int i; while (fileInputStream.available() > 0) { // с помощью read на каждой итерации цикла // считываем один байт и записываем в переменную int. // и после read возвращаемое количество байтов // через метод available уменьшается на 1 i = fileInputStream.read(); // также необходимо привести к символу // полученный из файла байт System.out.println((char) i); } } catch (Exception e) { } } }

После fileOutputStream.write(buff,0,buff.length); в файл person.txt записывается “Some Text” и файл выглядит так:

Циклом побайтно считается файл с помощью FileInputStream:

DataStream в Java

DataInputStream и DataOutputStream в Java: работа с байтовыми потоками примитивных типов. Примеры чтения/записи чисел через файловый ввод-вывод.
Time to read: 8

BufferedStream в Java

BufferedInputStream и BufferedOutputStream в Java: повышение производительности ввода-вывода с помощью буферизации. Пример работы с байтовыми массивами.
Time to read: 11

StringReader и StringWriter в Java

Изучите StringReader и StringWriter в Java: работа со строками как с потоками данных. Практический пример чтения и записи строк с буферизацией.
Time to read: 7