работаем с байтами: InputStream, OutputStream работаем с символами: Reader, Writer Это абстрактные классы. 0:00:00 Введение 0:03:17 InputStream: read, skip, reset и т.д. 0:13:34 InputStream: современные методы: readAllBytes, skipNBytes и т.д. 0:16:13 InputStream: реализации: FileInputStream, ByteArrayInputStream, ZipFile и т.д. 0:27:08 Управление внешними ресурсами: close, try with resources и т.д. 0:38:35 Управление внешними ресурсами: устаревший finalize 0:39:34 Управление внешними ресурсами: ресурсы не управлямые джавой 0:50:25 OutputStream: write, flush и т.д. 0:53:01 OutputStream: реализации: FileOutputStream, ByteArrayOutputStream и т.д. 1:01:00 Reader: read, skip, reset и т.д. 1:03:47 Reader: реализации: InputStreamReader, StringReader и т.д. 1:07:21 Writer: write, flush и т.д. 1:07:44 Writer: реализации: OutputStreamWriter, StringWriter и т.д. 1:08:45 java.io: пути к файлам, поиски 1:23:56 java.nio чтение каталога через stream 1:26:13 Path.get, Paths.of 1:26:08 Path: getFileName, getParent и т.д. 1:32:22 Files: copy, move и т.д. 1:38:14 еще: ByteBuffer, RandomAccessFile и т.д.
@igorshaula9097 Жыл бұрын
хоть кто-то конечно слушал :) спасибо за лекцию!
@zlataven24162 жыл бұрын
Очень нужный канал!👍
@viewer_evgeniy6 ай бұрын
Интересно очень. Спасибо за лекцию. Интересен стал такой момент. Если в программе предполагается в разных местах использовать потоки ввода/вывода. То для каждой отдельной ситуации нужно отдельно открывать (и после закрывать) свой поток, или лучше переиспользовать имеющийся? С одной стороны мы вроде как не занимаемся открытием и закрытием из раза в раз, что должно быть не самой дешевой операцией, но с другой стороны если пользуемся одним потоком ввода/вывод, то как я понимаю, есть шанс нарваться на тот самый случай, когда данные попали в буфер и затерялись. Или try-with-resources полностью решает эту проблему и мы можем для, например, всех чтений использовать один объект InputStream?
@vmened2 жыл бұрын
Видеохостинг удалил мое сообщение с вопросом о работе с DataInputStream