Работа с файлове

В предишните части видяхме класове за четене и писане потоци. Въпреки това, често е необходимо изпълнение и операции, като например определяне на атрибутите на даден файл, създаване или изтриване на директории, изтриване на файлове, да получите списък на всички файлове в директория, и така нататък. За да извърши всички тези операции по прилагане Java използва клас, наречен файл.

Създаване на обект от клас файла

Имате три начина за създаване на обект от клас файл, той причинява на един от трите дизайнери:

Първият от тези дизайнери има един параметър - препратка към пътя на низ до файла или директорията. Използване на втория конструктор, можете да укажете на обекта в текущата директория отделно реж директория и име на файла, за която създавате. И накрая, третата строителя ви позволява да укажете пълния път до името на директорията и файла.

Ако първият от тези дизайнери, за да премине препратка към нула на стойност, по изключение се хвърля NullPointerException.

използване дизайнери е много проста. Ето, например, как да създадете обект на файла клас за файла C: \ autoexec.bat и директория D: \ WinNT:

Дефиниране на атрибути на файлове и директории

След като сте създали един обект от класа на файла, че е лесно да се определят атрибутите на обекта чрез използване на подходящи методи на класа на файла.

Проверка на съществуването на файл или директория

С съществува помощта на метода, може да искате да се провери наличието на даден файл или отпечатан каталог, за които е бил създаден обект от класа на файла:

Този метод може да се използва, за да се осигури поток базирани FileOutputStream клас, ако искате да се избегне случайно презаписване на съществуващ файл. В този случай, преди да създадете изходящите потоци FileOutputStream клас трябва да се създаде клас обект на файла, като посочва пътя към строителя и след това проверете съществува метод на файл suschestovanie.

Проверка на четене и запис способности

Методи canRead canWrite и ви позволяват да се тества способността да се чете от файл и записва съответно файла:

Те са полезни, за да се прилага за създаване на съответни потоци, ако е необходимо, за да се избегне появата на изключенията, свързани с опит за извършване на неоторизиран достъп тип. Ако се предостави достъп, този метод се връща истина, и ако се отрече - невярно.

Определяне на вида на обекта - един файл или директория

С методи isDirectory isFile и можете да проверите, което съответства на класа създаде обект на файла - директория или файл:

Получаване на името на файл или директория

метод getName връща името на файла или папката за определен обект клас файла (името се откроява от пътя):

Получаване на абсолютния път до директорията

метод getAbsolutePath връща абсолютната пътя към файла или директорията, която може да бъде машинно-зависими:

Определяне на вида на пътя - на абсолютни или относителни

Използвайки метода isAbsolute можете да определите дали класа на файла с предмет на файла или директорията, определена от абсолютна (пълна) пътеката или относителен път:

Определяне на пътя към файл или директория

метод getPath ви позволява да дефинирате една машина-независим начин на даден файл или директория:

Определяне на предната директория

Ако е необходимо да се уточни родителската директория за обект на класа на файла, можете да го направите, като getParent:

Определяне на дължината на файла в байтове

Дължината на файла в байтове може да се определи с помощта на дължината на метод:

Дефиниране на файл или директория на последна промяна на времето

За да се определи времето на файла или директорията, последна промяна можете да се обадите на метода lastModified:

Имайте предвид обаче, че този метод се връща времето в произволни единици от стартирането на системата, така че е полезно само за относителни сравнения.

Получите текстово представяне на даден обект

Методът ToString връща текстов низ, представляващ обект на клас файла:

Първи стойността на кода на хашиш

метод хеш-код връща хеш код, съответстващ на файла обекта:

Изтриване на файлове и директории

За да премахнете нежелания файл или директория, трябва да създадете съответен File обект и след това се обадете на метода изтриване:

Създаване на директории

Използвайте методи за защитен режим mkdirs и можете да създавате нови папки:

Първият от тези техники, създава едно място, а вторият - всички поддиректории, водещи към новосъздадената директория (т.е. пълния път).

Преименуването на файлове и директории

За да преименувате файл или директория, трябва да създадете два обекта от класа на файла, един от които съответства на старото име, а втората - по нов начин. След това в продължение на perovgo на тези обекти трябва да се обадите метод renameTo, сочейки го като параметър позоваване на втория обект:

При успех, методът връща истина, ако има грешка - невярно. Тя може да се появи и SecurityException изключение.

Сравняване на обекти клас файла

За сравнение, обектите на класа на файла, трябва да използвате равен метод:

Имайте предвид, че този метод сравнява пътеките за файлове и директории, но не и на файлове или директории.

Първи в списъка съдържание директория

С помощта на метода на списък, можете да получите на директории, съответстваща на тази на обекта на клас файла. В класа на файла, има две версии на този метод - без параметъра и с опция:

Първият от тях metodv връща масив от низове със съдържанието на имената на директориите, с изключение на текущата директория и директория. Вторият ви позволява да получите списък с всички обекти, не се съхранява в директорията, но само тези, които отговарят на условията, посочени в FilenameFilter клас филтър филтър.

Пример за приложение, което сканира съдържанието на директорията, и се използва за този филтър, ще откриете по-долу в раздела "Приложение DirList".