Работа с каталогами
Если объект File представляет каталог, то его метод isDirectory() возвращает true. И поэтому мы можем получить его содержимое - вложенные подкаталоги и файлы с помощью методов list() и listFiles(). Получим все подкаталоги и файлы в определенном каталоге:
import java.io.File;
public class FilesApp {
public static void main(String[] args) {
// определяем объект для каталога
File dir = new File("C://SomeDir");
// если объект представляет каталог
if(dir.isDirectory())
{
// получаем все вложенные объекты в каталоге
for(File item : dir.listFiles()){
if(item.isDirectory()){
System.out.println(item.getName() + " \tкаталог");
}
else{
System.out.println(item.getName() + "\tфайл");
}
}
}
}
}
Теперь выполним еще ряд операций с каталогами, как удаление, переименование и создание:
import java.io.File;
public class FilesApp {
public static void main(String[] args) {
// определяем объект для каталога
File dir = new File("C://SomeDir//NewDir");
boolean created = dir.mkdir();
if(created)
System.out.println("Каталог успешно создан");
// переименуем каталог
File newDir = new File("C://SomeDir//NewDirRenamed");
dir.renameTo(newDir);
// удалим каталог
boolean deleted = newDir.delete();
if(deleted)
System.out.println("Каталог удален");
}
}
Работа с файлами
Работа с файлами аналогична работе с каталога. Например, получим данные по одному из файлов и создадим еще один файл:
import java.io.File;
import java.io.IOException;
public class FilesApp {
public static void main(String[] args) {
// определяем объект для каталога
File myFile = new File("C://SomeDir//somepicture.png");
System.out.println("Имя файла: " + myFile.getName());
System.out.println("Родительский каталог: " + myFile.getParent());
if(myFile.exists())
System.out.println("Файл существует");
else
System.out.println("Файл еще не создан");
System.out.println("Размер файла: " + myFile.length());
if(myFile.canRead())
System.out.println("Файл доступен для чтения");
else
System.out.println("Файл не доступен для чтения");
if(myFile.canWrite())
System.out.println("Файл доступен для записи");
else
System.out.println("Файл не доступен для записи");
// создадим новый файл
File newFile = new File("C://SomeDir//MyFile");
try
{
boolean created = newFile.createNewFile();
if(created)
System.out.println("Файл создан");
}
catch(IOException ex){
System.out.println(ex.getMessage());
}
}
}
При создании нового файла метод createNewFile() в случае неудачи выбрасывает исключение IOException, поэтому нам надо его отлавливать, например, в блоке try...catch, как делается в примере выше.
Дата добавления: 2017-01-26; просмотров: 1240;