[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-i-o-nio-kakoy-klass-prednaznachen-dlya-raboty-s-elementami-faylovoy-sistemy":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":19,"progress":20,"seo":21},672,"kakoy-klass-prednaznachen-dlya-raboty-s-elementami-faylovoy-sistemy",15,"i-o-nio","I\u002FO & NIO","📁","Какой класс предназначен для работы с элементами файловой системы?","Класс `java.io.File` представляет абстракцию пути к файлу или каталогу в файловой системе и позволяет выполнять операции с метаданными и структурой файловой системы.\n\n`File` не работает с содержимым файлов (для этого нужны потоки ввода\u002Fвывода), а предоставляет средства для создания, удаления, переименования файлов и каталогов, проверки их существования, получения размера, прав доступа, времени последнего изменения и пути к родительскому каталогу.\n\n### Основные возможности\n\n- Создание файлов и каталогов: `createNewFile()`, `mkdir()`, `mkdirs()`.\n- Удаление и переименование: `delete()`, `renameTo()`.\n- Проверки: `exists()`, `isFile()`, `isDirectory()`, `isHidden()`, `canRead()`, `canWrite()`.\n- Получение информации: `length()`, `lastModified()`, `getAbsolutePath()`, `getName()`, `getParent()`.\n- Листинг каталога: `list()`, `listFiles()`, `listFiles(FileFilter)`.\n\n### Важное о File\n\nОбъект `File` — это просто представление пути. Создание объекта `new File(\"test.txt\")` не создаёт файл на диске. Файл создаётся только при вызове `createNewFile()` или при открытии потока вывода, указывающего на этот путь.\n\nВ современном коде (Java 7+) рекомендуется использовать `java.nio.file.Path` и `java.nio.file.Files` вместо `File`, так как NIO.2 предоставляет более информативные исключения, поддержку символьных ссылок, атрибутов файлов и потоковых операций.\n\n> **На собеседовании:** назовите `File` и его основные методы. Обязательно упомяните, что в новом коде следует использовать `Path`\u002F`Files` (NIO.2), а `File` считается устаревшим подходом.","","junior",[15,16,17,18],"core","file","основы","io",[],null,{"title":22,"description":23,"ogTitle":24,"ogDescription":25,"keywords":26,"schemaAnswer":37,"featuredSnippetReady":38},"Класс File в Java — Gymterview","Класс java.io.File: работа с файлами и каталогами, создание, удаление, проверки. Почему в новом коде лучше использовать Path и Files (NIO.2).","Класс File для работы с файловой системой — Gymterview","java.io.File: создание, удаление, проверки файлов и каталогов. Сравнение с NIO.2 Path\u002FFiles.",[27,28,29,30,31,32,33,34,35,36],"File","java.io.File","файловая система","createNewFile","mkdir","exists","Path","NIO.2","Java IO","собеседование","Класс java.io.File представляет путь к файлу или каталогу в файловой системе. Позволяет создавать (createNewFile, mkdir), удалять (delete), переименовывать (renameTo) файлы, проверять их свойства (exists, isFile, isDirectory), получать информацию (length, lastModified, getAbsolutePath). В новом коде рекомендуется NIO.2 (Path, Files).",true]