Класс File на языке Java
В языке программирования Java такой класс, как File, осуществляет взаимодействие не с целыми потоками данных, а непосредственно с конкретными файлами. Это можно наблюдать, если осуществлять сравнение с различными классами вывода и ввода.
Посредством использования этого класса есть возможность получить максимально детальную информацию о желаемом файле: дата и время создания, права доступа, путь к конкретному каталогу. Помимо этого, с его помощью можно осуществлять навигацию по различным иерархиям подкаталогов.
Работа с конструкторами
Рассматривая такой класс, как java.io.File, стоит обратить внимание на то, что он может осуществлять представление определенного типа файла, а также конкретной группы файлов, которые входят в состав каталога. В том случае, если класс будет представлять целый каталог, то с помощью так называемого метода list можно осуществить процесс возвращения массива строк с именами всех используемых файлов.
В том случае, если есть необходимость в процедуре создания объектов, которые принадлежат к классу File, то для реализации этого процесса можно применять следующие варианты конструкторов:
- String name – здесь указывается конкретный объект каталога и имя используемого файла;
- Sting path – элемент, применяемый для того, чтобы указать путь к конкретному файлу, но без указывания его имени;
- Sting dirPath – указывается, как имя, так и непосредственно сам путь к файлу;
- URL uri – указание объекта URL, описывающего файл.
Класс File и используемые методы
Как показывает практика, достаточно часто класс File применяют не только при необходимости создания каталога, но и целого дерева каталогов. Помимо этого, это отличная возможность ознакомиться с определенными свойствами файла, определение типа, к которому он принадлежит или же вовсе процесс удаления файла.
У представленного класса есть достаточно большой список методов, поэтому ознакомимся с теми, которые встречаются чаще всего. Среди них стоит обратить внимание на следующие:
- canRead – доступность к процессу чтения;
- getAbsolutePath – предоставление абсолютного пути к конкретному файлу, где в основе находится корневая система;
- exists – существование или же не существование файла;
- canWrite – доступность к процессу записи;
- getParent – осуществляет такой процесс, как возвращение родительского имени каталога;
- getName – возвращение имени файла;
- getPath – указание пути;
- isFile – объект выступает в качестве файла, а не каталога;
- lastModified – указание даты, когда были внесены последние изменения;
- isAbsolute – возвращает «истину» в том случае, если у файла имеется абсолютный путь;
- isDirectory – объект выступает в качестве каталога, а не файла;
- delete – осуществляет процесс удаления файла или же вовсе пустого каталога;
- renameTo – осуществляет такой процесс, как возможность переименовывать файлы. Имя нового файла стоит указывать в параметре. В том случае, если процесс переименования оказался неудачным, то происходит возвращение функции «false».
Немного теории, касающейся создания файлов в Java
В том случае, если в Java есть необходимость в создании файла, реализовать этот процесс можно тремя способами, передав в такой объект, как File, следующие данные:
- указание имени конкретного файла;
- абсолютный путь;
- указание относительного пути (при использовании этого метода первоначально происходит процесс поиска в так называемом корневом каталоге).
В том случае, если есть необходимость в том, чтобы к файлу создать конкретный путь, нужно использовать одно из свойств системы, в качестве которого выступает File.separator. Эта процедура реализуется для того, чтобы программа в дальнейшем стала платформонезависимой.
В данном случае стоит обратить внимание на образец программы, в котором используется один из вышеперечисленных методов создания файла:
Как только эта программа будет запущена в первый раз, каждый программист увидит перед собой следующий результат:
На том участке, где произошло применение относительного пути, программа будет выдавать IOException. Связано это с тем, что в корневой папке каталога отсутствует tmp каталога. Поэтому, если смотреть на такой метод, как createNewFile(), то он старается всего лишь создать файл, располагающийся в корневой папке необходимого проекта.
Теперь стоит обратить внимание на такой процесс, как создание каталога tmp. После этого стоит еще один раз реализовать процедуру:
Теперь же можно заметить, что файл, в котором указывается полный путь, уже существует. Это основное, что должен знать каждый, кто желает создавать файлы в Java.
Для удаления определенного файла в Java, используется такой метод, как delete. В том случае, если файл будет удаляться успешно, этот метод будет возвращать true и наоборот false, если файл невозможно удалить или же его вовсе не существует.
В том случае, если есть необходимость в удалении папки, то посредством применения этого метода, в первую очередь он будет осуществлять процесс проверки папки на пустоту. Удаление будет происходить только в том случае, если папка окажется пустой.