Использование FileWriter и FileReader

max аватар
115
Находится в разделах:

На практике, Вы, вероятно, никогда не будете использовать FileWriter и FileReader классы без оборачивания их (wrapping).

Итак, пример:

что производит следующий результат:

Вот, что произошло на самом деле:

  1. FileWriter fw = new FileWriter(file) делает следующие вещи:
  • Создает ссылочную переменную типа FileWriter, fw
  • Создает объект FileWriter, и присваивает его к fw.
  • Создает действительно пустой файл на диске.
  1. Мы записали 12 символов в файл с помощью метода write() и с помощью flush() и close() - слили в файл и закрыли его.
  2. Создали новый объект FileReader, который также открывает файл на диске для чтения.
  3. Метод read() читает целый файл, по символу, и заносит в массив символов.
  4. Распечатываем количество символов, которые были считаны, проходимся по массиву и закрываем файл.
Когда данные пишутся в поток, происходит некая буферизация и Вы никогда не будете знать наверняка, когда в последний раз были посланы данные. Метод flush() гарантирует, что последние данные, которые, как вы думаете, были записаны в файл, сливаются в файл. Неважно какую операцию вы проводили с файлом - чтение или запись - необходимо закрыть поток с помощью close().

Конец
Альберт Эйнштейн склоняется к тому, что тот, кто хочет видеть результаты своего труда немедленно, должен идти в сапожники.

просто и понятно

Отправить комментарий

CAPTCHA
Чтобы оставить комментарий, введите пожалуйста код, изображенный на картинке
Image CAPTCHA
Введите символы, изображенные на картинке