Spec-Zone .ru
спецификации, руководства, описания, API
|
public class File extends Object implements Serializable, Comparable<File>
Пользовательские интерфейсы и операционные системы используют системно-зависимые строки пути, чтобы назвать файлы и каталоги. Этот класс представляет абстрактное, системно-независимое представление иерархических путей. У абстрактного пути есть два компонента:
"/"
для корневого каталога UNIX, или "\\\\"
для пути Microsoft Windows UNC, и Преобразование строки пути к или от абстрактного пути по сути системно-зависимо. Когда абстрактный путь преобразовывается в строку пути, каждое имя разделяется от следующего единственной копией символа разделителя по умолчанию. Символ разделителя имени по умолчанию определяется системным свойством file.separator
, и делается доступным в общедоступных статических полях
и separator
из этого класса. Когда строка пути преобразовывается в абстрактный путь, имена в пределах нее могут быть разделены символом разделителя имени по умолчанию или любым другим символом разделителя имени, который поддерживается базовой системой. separatorChar
Путь, или краткий обзор или в строковой форме, могут быть или абсолютными или относительными. Абсолютный путь не полон в той никакой другой информации, требуется, чтобы определить местоположение файла, который это обозначает. Относительный путь, напротив, должен быть интерпретирован с точки зрения информации, взятой от некоторого другого пути. По умолчанию классы в java.io
пакет всегда разрешает относительные пути против текущего пользовательского каталога. Этот каталог называет системное свойство user.dir
, и обычно каталог, в котором была вызвана виртуальная машина Java.
Родитель абстрактного пути может быть получен, вызывая getParent()
метод этого класса и состоит из префикса пути и каждого имени в последовательности имени пути за исключением последнего. Абсолютный путь каждого каталога является предком любого объекта File с абсолютным абстрактным путем, который начинается с абсолютного пути каталога. Например, каталог, обозначенный абстрактным путем "/usr", является предком каталога, обозначенного путем "/usr/local/bin".
Префиксное понятие используется, чтобы обработать корневые каталоги на платформах UNIX, и спецификаторы диска, корневые каталоги и пути ПРОТОКОЛА INTERNET на платформах Microsoft Windows, следующим образом:
"/"
. У относительных путей нет никакого префикса. У абстрактного пути, обозначающего корневой каталог, есть префикс "/"
и последовательность пустого названия. ":"
и возможно сопровождаемый "\\"
если путь является абсолютным. Префикс пути ПРОТОКОЛА INTERNET "\\\\"
; имя хоста и сетевое имя являются первыми двумя именами в последовательности имени. У относительного пути, который не определяет диск, нет никакого префикса. Экземпляры этого класса могут или, возможно, не обозначают фактический объект файловой системы, такой как файл или каталог. Если это действительно обозначает такой объект тогда, что объект находится в разделе. Раздел является операционной специфичной для системы частью хранения для файловой системы. Единственное устройство хранения данных (например, физический дисковод, флэш-память, CD-ROM) может содержать многократные разделы. Объект, если таковые вообще имеются, будет находиться на разделе, названном некоторым предком абсолютной формы этого пути.
Файловая система может реализовать ограничения на определенные операции на фактическом объекте файловой системы, такие как чтение, запись, и выполнение. Эти ограничения все вместе известны как права доступа. У файловой системы могут быть многократные наборы прав доступа на единственном объекте. Например, один набор может примениться к владельцу объекта, и другой может примениться ко всем другим пользователям. Права доступа на объекте могут вызвать некоторые методы в этом классе сбоя.
Экземпляры File
класс является неизменным; то есть, когда-то создаваемый, абстрактный путь представляется a File
объект никогда не будет изменяться.
java.nio.file
пакет java.nio.file
пакет определяет интерфейсы и классы для виртуальной машины Java, чтобы получить доступ к файлам, атрибутам файла, и файловым системам. Этот API может использоваться, чтобы преодолеть многие из ограничений java.io.File
класс. toPath
метод может использоваться, чтобы получить a Path
это использует абстрактный путь, представленный a File
объект определить местоположение файла. Получающееся Path
может использоваться с Files
класс, чтобы обеспечить более эффективный и обширный доступ к дополнительным операциям файла, атрибутам файла, и исключениям ввода-вывода, чтобы помочь диагностировать ошибки, когда работа на файле перестала работать.
Модификатор и Тип | Поле и Описание |
---|---|
static String |
pathSeparator
Системно-зависимый символ разделителя пути, представленный как строка для удобства.
|
static char |
pathSeparatorChar
Системно-зависимый символ разделителя пути.
|
static String |
разделитель
Системно-зависимый символ разделителя имени по умолчанию, представленный как строка для удобства.
|
static char |
separatorChar
Системно-зависимый символ разделителя имени по умолчанию.
|
Конструктор и Описание |
---|
File(File parent, String child)
Создает новое
File экземпляр от родительского абстрактного пути и дочерней строки пути. |
File(String pathname)
Создает новое
File экземпляр, преобразовывая данный путь представляет в виде строки в абстрактный путь. |
File(String parent, String child)
Создает новое
File экземпляр от родительской строки пути и дочерней строки пути. |
File(URI uri)
Создает новый экземпляр File, преобразовывая данный URI file: в абстрактный путь.
|
Модификатор и Тип | Метод и Описание |
---|---|
boolean |
canExecute()
Тесты, может ли приложение выполнить файл, обозначенный этим абстрактным путем.
|
boolean |
canRead()
Тесты, может ли приложение считать файл, обозначенный этим абстрактным путем.
|
boolean |
canWrite()
Тесты, может ли приложение изменить файл, обозначенный этим абстрактным путем.
|
int |
compareTo(File pathname)
Сравнивает два абстрактных пути лексикографически.
|
boolean |
createNewFile()
Атомарно создает новый, пустой файл, названный этим абстрактным путем, если и только если файл с этим именем еще не существует.
|
static File |
createTempFile(String prefix, String suffix)
Создает пустой файл в каталоге временного файла по умолчанию, используя данный префикс и суффикс, чтобы генерировать его имя.
|
static File |
createTempFile(String prefix, String suffix, File directory)
Создает новый пустой файл в указанном каталоге, используя данный префикс и суффиксные строки, чтобы генерировать его имя.
|
boolean |
delete()
Удаляет файл или каталог, обозначенный этим абстрактным путем.
|
void |
deleteOnExit()
Запросы, что файл или каталог, обозначенный этим абстрактным путем быть удаленным, когда виртуальная машина завершается.
|
boolean |
equals(Object obj)
Тесты этот абстрактный путь для равенства с данным объектом.
|
boolean |
exists()
Тесты, существует ли файл или каталог, обозначенный этим абстрактным путем.
|
Файл |
getAbsoluteFile()
Возвращает абсолютную форму этого абстрактного пути.
|
Строка |
getAbsolutePath()
Возвращает строку абсолютного пути этого абстрактного пути.
|
Файл |
getCanonicalFile()
Возвращает каноническую форму этого абстрактного пути.
|
Строка |
getCanonicalPath()
Возвращает каноническую строку пути этого абстрактного пути.
|
long |
getFreeSpace()
Возвращает число освобожденных байтов в разделе, названном этим абстрактным путем.
|
Строка |
getName()
Возвращает имя файла или каталога, обозначенного этим абстрактным путем.
|
Строка |
getParent()
Возвращает строку пути родителя этого абстрактного пути, или
null если этот путь не называет родительский каталог. |
Файл |
getParentFile()
Возвращает абстрактный путь родителя этого абстрактного пути, или
null если этот путь не называет родительский каталог. |
Строка |
getPath()
Преобразовывает этот абстрактный путь в строку пути.
|
long |
getTotalSpace()
Возвращает размер раздела, названного этим абстрактным путем.
|
long |
getUsableSpace()
Возвращает число байтов, доступных этой виртуальной машине на разделе, названном этим абстрактным путем.
|
int |
hashCode()
Вычисляет хэш-код для этого абстрактного пути.
|
boolean |
isAbsolute()
Тесты, является ли этот абстрактный путь абсолютным.
|
boolean |
isDirectory()
Тесты, является ли файл, обозначенный этим абстрактным путем, каталогом.
|
boolean |
isFile()
Тесты, является ли файл, обозначенный этим абстрактным путем, нормальным файлом.
|
boolean |
isHidden()
Тесты, является ли файл, названный этим абстрактным путем, скрытым файлом.
|
long |
lastModified()
Возвращает время, когда файл, обозначенный этим абстрактным путем, был последний измененный.
|
long |
length()
Возвращает длину файла, обозначенного этим абстрактным путем.
|
Строка[] |
list()
Возвращает массив строк, называя файлы и каталоги в каталоге, обозначенном этим абстрактным путем.
|
Строка[] |
list(FilenameFilter filter)
Возвращает массив строк, называя файлы и каталоги в каталоге, обозначенном этим абстрактным путем, которые удовлетворяют указанный фильтр.
|
Файл[] |
listFiles()
Возвращает массив абстрактных путей, обозначающих файлы в каталоге, обозначенном этим абстрактным путем.
|
Файл[] |
listFiles(FileFilter filter)
Возвращает массив абстрактных путей, обозначающих файлы и каталоги в каталоге, обозначенном этим абстрактным путем, которые удовлетворяют указанный фильтр.
|
Файл[] |
listFiles(FilenameFilter filter)
Возвращает массив абстрактных путей, обозначающих файлы и каталоги в каталоге, обозначенном этим абстрактным путем, которые удовлетворяют указанный фильтр.
|
static File[] |
listRoots()
Перечислите доступные корни файловой системы.
|
boolean |
mkdir()
Создает каталог, названный этим абстрактным путем.
|
boolean |
mkdirs()
Создает каталог, названный этим абстрактным путем, включая любые необходимые, но несуществующие родительские каталоги.
|
boolean |
renameTo(File dest)
Переименовывает файл, обозначенный этим абстрактным путем.
|
boolean |
setExecutable(boolean executable)
Метод удобства, чтобы установить владельца выполняет разрешение для этого абстрактного пути.
|
boolean |
setExecutable(boolean executable, boolean ownerOnly)
Устанавливает владельца или общий выполнять разрешение для этого абстрактного пути.
|
boolean |
setLastModified(long time)
Устанавливает последним образом измененное время файла или каталога, названного этим абстрактным путем.
|
boolean |
setReadable(boolean readable)
Метод удобства, чтобы установить разрешение чтения владельца для этого абстрактного пути.
|
boolean |
setReadable(boolean readable, boolean ownerOnly)
Устанавливает владельца или общее разрешение чтения для этого абстрактного пути.
|
boolean |
setReadOnly()
Отмечает файл или каталог, названный этим абстрактным путем так, чтобы только операции чтения были позволены.
|
boolean |
setWritable(boolean writable)
Метод удобства, чтобы установить разрешение записи владельца для этого абстрактного пути.
|
boolean |
setWritable(boolean writable, boolean ownerOnly)
Устанавливает владельца или общее разрешение записи для этого абстрактного пути.
|
Путь |
toPath()
Возвраты a
java.nio.file.Path объект создается из этого абстрактного пути. |
Строка |
toString()
Возвращает строку пути этого абстрактного пути.
|
URI |
toURI()
Создает URI file:, который представляет этот абстрактный путь.
|
URL |
toURL()
|
public static final char separatorChar
file.separator
. На системах UNIX значение этого поля '/'
; на системах Microsoft Windows это '\\'
.System.getProperty(java.lang.String)
public static final String separator
separatorChar
.public static final char pathSeparatorChar
path.separator
. Этот символ используется, чтобы разделить имена файлов в последовательности файлов, данных как список пути. На системах UNIX этот символ ':'
; на системах Microsoft Windows это ';'
.System.getProperty(java.lang.String)
public static final String pathSeparator
pathSeparatorChar
.public File(String pathname)
File
экземпляр, преобразовывая данный путь представляет в виде строки в абстрактный путь. Если данная строка является пустой строкой, то результатом является пустой абстрактный путь.pathname
- Строка путиNullPointerException
- Если pathname
параметр null
public File(String parent, String child)
File
экземпляр от родительской строки пути и дочерней строки пути. Если parent
null
тогда новое File
экземпляр создается как будто, вызывая единственный параметр File
конструктор на данном child
строка пути.
Иначе parent
строка пути берется, чтобы обозначить каталог, и child
строка пути берется, чтобы обозначить или каталог или файл. Если child
строка пути является абсолютной тогда, она преобразовывается в относительный путь системно-зависимым способом. Если parent
пустая строка тогда новое File
экземпляр создается, преобразовывая child
в абстрактный путь и разрешение результата против системно-зависимого каталога по умолчанию. Иначе каждая строка пути преобразовывается в абстрактный путь, и дочерний абстрактный путь разрешается против родителя.
parent
- Родительская строка путиchild
- Дочерняя строка путиNullPointerException
- Если child
null
public File(File parent, String child)
File
экземпляр от родительского абстрактного пути и дочерней строки пути. Если parent
null
тогда новое File
экземпляр создается как будто, вызывая единственный параметр File
конструктор на данном child
строка пути.
Иначе parent
абстрактный путь берется, чтобы обозначить каталог, и child
строка пути берется, чтобы обозначить или каталог или файл. Если child
строка пути является абсолютной тогда, она преобразовывается в относительный путь системно-зависимым способом. Если parent
пустой абстрактный путь тогда новое File
экземпляр создается, преобразовывая child
в абстрактный путь и разрешение результата против системно-зависимого каталога по умолчанию. Иначе каждая строка пути преобразовывается в абстрактный путь, и дочерний абстрактный путь разрешается против родителя.
parent
- Родительский абстрактный путьchild
- Дочерняя строка путиNullPointerException
- Если child
null
public File(URI uri)
Точная форма URI file: системно-зависима, следовательно преобразование, выполняемое этим конструктором, также системно-зависимо.
Для данного абстрактного пути f этому гарантируют это
new File( f.пока исходный абстрактный путь, URI, и новый абстрактный путь все создаются в (возможно различные вызовы) та же самая виртуальная машина Java. Это отношение обычно не содержит, однако, когда URI file:, который создается в виртуальной машине на одной операционной системе, преобразовывается в абстрактный путь в виртуальной машине на различной операционной системе.toURI
()).equals( f.getAbsoluteFile
())
uri
- Абсолютный, иерархический URI со схемой, равной "file", непустому компоненту пути, и неопределенным полномочиям, запросу, и компонентам фрагментаNullPointerException
- Если uri является nullIllegalArgumentException
- Если предварительные условия на параметре не содержатtoURI()
, URI
public String getName()
public String getParent()
null
если этот путь не называет родительский каталог. Родитель абстрактного пути состоит из префикса пути, если таковые вообще имеются, и каждого имени в последовательности имени пути за исключением последнего. Если последовательность имени пуста тогда, путь не называет родительский каталог.
null
если этот путь не называет родителяpublic File getParentFile()
null
если этот путь не называет родительский каталог. Родитель абстрактного пути состоит из префикса пути, если таковые вообще имеются, и каждого имени в последовательности имени пути за исключением последнего. Если последовательность имени пуста тогда, путь не называет родительский каталог.
null
если этот путь не называет родителяpublic String getPath()
default name-separator character
разделить имена в последовательности имени.public boolean isAbsolute()
"/"
. На системах Microsoft Windows путь является абсолютным, если его префикс является спецификатором диска, сопровождаемым "\\"
, или если его префикс "\\\\"
.true
если этот абстрактный путь является абсолютным, false
иначеpublic String getAbsolutePath()
Если этот абстрактный путь является уже абсолютным, то строка пути просто возвращается как будто
метод. Если этот абстрактный путь является пустым абстрактным путем тогда строка пути текущего пользовательского каталога, который называет системное свойство getPath()
user.dir
, возвращается. Иначе этот путь разрешается системно-зависимым способом. На системах UNIX относительный путь делается абсолютным, разрешая это против текущего пользовательского каталога. На системах Microsoft Windows относительный путь делается абсолютным, разрешая это против текущего каталога диска, названного путем, если любой; в противном случае это разрешается против текущего пользовательского каталога.
SecurityException
- Если к необходимому системному значению свойства нельзя получить доступ.isAbsolute()
public File getAbsoluteFile()
new File(this.getAbsolutePath()
)
.SecurityException
- Если к необходимому системному значению свойства нельзя получить доступ.public String getCanonicalPath() throws IOException
Канонический путь является и абсолютным и уникальным. Точное определение канонической формы системно-зависимо. Этот метод сначала преобразовывает этот путь в абсолютную форму в случае необходимости, как будто, вызывая getAbsolutePath()
метод, и затем отображает это на свою уникальную форму системно-зависимым способом. Это обычно включает удаляющие избыточные имена, такие как "." и ".." от пути, разрешая символьные ссылки (на платформах UNIX), и преобразовывая буквы дисков в стандартный случай (на платформах Microsoft Windows).
У каждого пути, который обозначает существующий файл или каталог, есть уникальная каноническая форма. У каждого пути, который обозначает несуществующий файл или каталог также, есть уникальная каноническая форма. Каноническая форма пути несуществующего файла или каталога может отличаться от канонической формы того же самого пути после того, как файл или каталог создается. Точно так же каноническая форма пути существующего файла или каталога может отличаться от канонической формы того же самого пути после того, как файл или каталог удаляется.
IOException
- Если ошибка ввода-вывода происходит, который возможен, потому что конструкция канонического пути может потребовать запросов файловой системыSecurityException
- Если к необходимому системному значению свойства нельзя получить доступ, или если менеджер безопасности существует и SecurityManager.checkRead(java.io.FileDescriptor)
метод отрицает доступ для чтения к файлуPath.toRealPath(java.nio.file.LinkOption...)
public File getCanonicalFile() throws IOException
new File(this.getCanonicalPath()
)
.IOException
- Если ошибка ввода-вывода происходит, который возможен, потому что конструкция канонического пути может потребовать запросов файловой системыSecurityException
- Если к необходимому системному значению свойства нельзя получить доступ, или если менеджер безопасности существует и SecurityManager.checkRead(java.io.FileDescriptor)
метод отрицает доступ для чтения к файлуPath.toRealPath(java.nio.file.LinkOption...)
@Deprecated public URL toURL() throws MalformedURLException
toURI
метод, и затем преобразование URI в URL через URI.toURL
метод.file:
URL. Точная форма URL системно-зависима. Если это может быть решено, что файл, обозначенный этим абстрактным путем, является каталогом, то получающийся URL закончится наклонной чертой.MalformedURLException
- Если путь не может быть проанализирован как URLtoURI()
, URI
, URI.toURL()
, URL
public URI toURI()
Точная форма URI системно-зависима. Если это может быть решено, что файл, обозначенный этим абстрактным путем, является каталогом, то получающийся URI закончится наклонной чертой.
Для данного абстрактного пути f, этому гарантируют это
newпока исходный абстрактный путь, URI, и новый абстрактный путь все создаются в (возможно различные вызовы) та же самая виртуальная машина Java. Из-за системно-зависимой природы абстрактных путей, однако, это отношение обычно не содержит, когда URI file:, который создается в виртуальной машине на одной операционной системе, преобразовывается в абстрактный путь в виртуальной машине на различной операционной системе.File
( f.toURI()).equals( f.getAbsoluteFile
())
Отметьте, что, когда этот абстрактный путь представляет путь ПРОТОКОЛА INTERNET тогда, все компоненты ПРОТОКОЛА INTERNET (включая компонент имени сервера) кодируются в URI
путь. Компонент полномочий неопределен, означая, что он представляется как null
. Path
класс определяет toUri
метод, чтобы закодировать имя сервера в компоненте полномочий получающегося URI
. toPath
метод может использоваться, чтобы получить a Path
представление этого абстрактного пути.
SecurityException
- Если к необходимому системному значению свойства нельзя получить доступ.File(java.net.URI)
, URI
, URI.toURL()
public boolean canRead()
true
если и только если файл, определенный этим абстрактным путем, существует и может быть считан приложением; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод отрицает доступ для чтения к файлуpublic boolean canWrite()
true
если и только если файловая система фактически содержит файл, обозначенный этим абстрактным путем, и приложению позволяют записать в файл; false
иначе.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к файлуpublic boolean exists()
true
если и только если файл или каталог, обозначенный этим абстрактным путем, существует; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод отрицает доступ для чтения к файлу или каталогуpublic boolean isDirectory()
Где это обязано отличать исключение ввода-вывода из случая, что файл не является каталогом, или где несколько атрибутов того же самого файла требуются одновременно, тогда Files.readAttributes
метод может использоваться.
true
если и только если файл, обозначенный этим абстрактным путем, существует и является каталогом; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод отрицает доступ для чтения к файлуpublic boolean isFile()
Где это обязано отличать исключение ввода-вывода из случая, что файл не является нормальным файлом, или где несколько атрибутов того же самого файла требуются одновременно, тогда Files.readAttributes
метод может использоваться.
true
если и только если файл, обозначенный этим абстрактным путем, существует и является нормальным файлом; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод отрицает доступ для чтения к файлуpublic boolean isHidden()
'.'
). На системах Microsoft Windows файл, как полагают, скрывается, если он был отмечен как таковой в файловой системе.true
если и только если файл, обозначенный этим абстрактным путем, скрывается согласно соглашениям базовой платформыSecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод отрицает доступ для чтения к файлуpublic long lastModified()
Где это обязано отличать исключение ввода-вывода из случая где 0L
возвращается, или где несколько атрибутов того же самого файла требуются одновременно, или где время последнего доступа или время создания требуется, тогда Files.readAttributes
метод может использоваться.
long
значение, представляющее время файл, было последнее измененный, измеренный в миллисекундах начиная с эпохи (GMT 0:00:00, 1 января 1970), или 0L
если файл не существует или если ошибка ввода-вывода происходитSecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод отрицает доступ для чтения к файлуpublic long length()
Где это обязано отличать исключение ввода-вывода из случая это 0L
возвращается, или где несколько атрибутов того же самого файла требуются одновременно, тогда Files.readAttributes
метод может использоваться.
0L
если файл не существует. Некоторые операционные системы могут возвратиться 0L
для путей, обозначающих системно-зависимые объекты, такие как устройства или каналы.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод отрицает доступ для чтения к файлуpublic boolean createNewFile() throws IOException
Отметьте: этот метод не должен использоваться для захвата файла, поскольку получающийся протокол не может быть сделан работать достоверно. FileLock
средство должно использоваться вместо этого.
true
если именованный файл не существует и успешно создавался; false
если именованный файл уже существуетIOException
- Если ошибка ввода-вывода произошлаSecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к файлуpublic boolean delete()
Отметьте что Files
класс определяет delete
метод, чтобы бросить IOException
когда файл не может быть удален. Это полезно для сообщения об ошибке и диагностировать, почему файл не может быть удален.
true
если и только если файл или каталог успешно удаляется; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkDelete(java.lang.String)
метод отрицает, удаляют доступ к файлуpublic void deleteOnExit()
Как только удаление требовали, не возможно отменить запрос. Этот метод должен поэтому использоваться с заботой.
Отметьте: этот метод не должен использоваться для захвата файла, поскольку получающийся протокол не может быть сделан работать достоверно. FileLock
средство должно использоваться вместо этого.
SecurityException
- Если менеджер безопасности существует и SecurityManager.checkDelete(java.lang.String)
метод отрицает, удаляют доступ к файлуdelete()
public String[] list()
Если этот абстрактный путь не обозначает каталог, то этот метод возвращается null
. Иначе массив строк возвращается, один для каждого файла или каталога в каталоге. Имена, обозначающие каталог непосредственно и родительский каталог каталога, не включаются в результат. Каждая строка является именем файла, а не полным путем.
Нет никакой гарантии, что строки имени в получающемся массиве появятся в любом определенном порядке; они, как, в частности гарантируют, не появятся в алфавитном порядке.
Отметьте что Files
класс определяет newDirectoryStream
метод, чтобы открыть каталог и выполнить итерации по именам файлов в каталоге. Это может использовать меньше ресурсов, работая с очень большими каталогами, и может быть более быстро реагирующим, работая с удаленными каталогами.
null
если этот абстрактный путь не обозначает каталог, или если ошибка ввода-вывода происходит.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(String)
метод отрицает доступ для чтения к каталогуpublic String[] list(FilenameFilter filter)
list()
метод, за исключением того, что строки в возвращенном массиве должны удовлетворить фильтр. Если данный filter
null
тогда все имена принимаются. Иначе, имя удовлетворяет фильтр если и только если значение true
результаты, когда FilenameFilter.accept(File, String)
метод фильтра вызывается на этот абстрактный путь и имя файла или каталога в каталоге, который это обозначает.filter
- Фильтр имени файлаfilter
. Массив будет пуст, если каталог будет пуст или если никакие имена не были приняты фильтром. Возвраты null
если этот абстрактный путь не обозначает каталог, или если ошибка ввода-вывода происходит.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(String)
метод отрицает доступ для чтения к каталогуFiles.newDirectoryStream(Path,String)
public File[] listFiles()
Если этот абстрактный путь не обозначает каталог, то этот метод возвращается null
. Иначе массив File
объекты возвращаются, один для каждого файла или каталога в каталоге. Пути, обозначающие каталог непосредственно и родительский каталог каталога, не включаются в результат. Каждый получающийся абстрактный путь создается из этого абстрактного пути, используя File(File, String)
конструктор. Поэтому, если этот путь является абсолютным тогда, каждый получающийся путь является абсолютным; если этот путь будет относителен тогда, то каждый получающийся путь будет относительно того же самого каталога.
Нет никакой гарантии, что строки имени в получающемся массиве появятся в любом определенном порядке; они, как, в частности гарантируют, не появятся в алфавитном порядке.
Отметьте что Files
класс определяет newDirectoryStream
метод, чтобы открыть каталог и выполнить итерации по именам файлов в каталоге. Это может использовать меньше ресурсов, работая с очень большими каталогами.
null
если этот абстрактный путь не обозначает каталог, или если ошибка ввода-вывода происходит.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(String)
метод отрицает доступ для чтения к каталогуpublic File[] listFiles(FilenameFilter filter)
listFiles()
метод, за исключением того, что пути в возвращенном массиве должны удовлетворить фильтр. Если данный filter
null
тогда все пути принимаются. Иначе, путь удовлетворяет фильтр если и только если значение true
результаты, когда FilenameFilter.accept(File, String)
метод фильтра вызывается на этот абстрактный путь и имя файла или каталога в каталоге, который это обозначает.filter
- Фильтр имени файлаnull
если этот абстрактный путь не обозначает каталог, или если ошибка ввода-вывода происходит.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(String)
метод отрицает доступ для чтения к каталогуFiles.newDirectoryStream(Path,String)
public File[] listFiles(FileFilter filter)
listFiles()
метод, за исключением того, что пути в возвращенном массиве должны удовлетворить фильтр. Если данный filter
null
тогда все пути принимаются. Иначе, путь удовлетворяет фильтр если и только если значение true
результаты, когда FileFilter.accept(File)
метод фильтра вызывается на путь.filter
- Фильтр файлаnull
если этот абстрактный путь не обозначает каталог, или если ошибка ввода-вывода происходит.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(String)
метод отрицает доступ для чтения к каталогуFiles.newDirectoryStream(Path,java.nio.file.DirectoryStream.Filter)
public boolean mkdir()
true
если и только если каталог создавался; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод не разрешает именованному каталогу создаватьсяpublic boolean mkdirs()
true
если и только если каталог создавался, наряду со всеми необходимыми родительскими каталогами; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkRead(java.lang.String)
метод не разрешает проверку существования именованного каталога и всех необходимых родительских каталогов; или если SecurityManager.checkWrite(java.lang.String)
метод не разрешает именованному каталогу и всем необходимым родительским каталогам создаватьсяpublic boolean renameTo(File dest)
Много аспектов поведения этого метода по сути зависимы от платформы: переименовать работа не могла бы быть в состоянии переместить файл от одной файловой системы до другого, это не могло бы быть атомарным, и это не могло бы успешно выполниться, если файл с целевым путем краткого обзора уже существует. Возвращаемое значение должно всегда проверяться, чтобы удостовериться, что переименовать работа была успешна.
Отметьте что Files
класс определяет move
метод, чтобы переместиться или переименовать файл независимым от платформы способом.
dest
- Новый абстрактный путь для именованного файлаtrue
если и только если переименование успешно выполнялось; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи или к старым или к новым путямNullPointerException
- Если параметр dest
null
public boolean setLastModified(long time)
Все платформы поддерживают время изменения файла к самой близкой секунде, но некоторые обеспечивают больше точности. Параметр будет усеченным, чтобы соответствовать поддерживаемой точности. Если работа успешно выполняется, и никакие прошедшие операции на файле не имеют место, то следующий вызов
метод возвратится (возможно усеченный) lastModified()
time
параметр, который передали к этому методу.
time
- Новое последним образом измененное время, измеренное в миллисекундах начиная с эпохи (GMT 0:00:00, 1 января 1970)true
если и только если работа успешно выполнялась; false
иначеIllegalArgumentException
- Если параметр отрицателенSecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к именованному файлуpublic boolean setReadOnly()
true
если и только если работа успешно выполнялась; false
иначеSecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к именованному файлуpublic boolean setWritable(boolean writable, boolean ownerOnly)
Files
класс определяет методы, которые работают на атрибутах файла включая полномочия файла. Это может использоваться, когда более прекрасное манипулирование полномочиями файла требуется.
writable
- Если true
, устанавливает право доступа, чтобы позволить операции записи; если false
отвергнуть операции записиownerOnly
- Если true
, разрешение записи применяется только к разрешению записи владельца; иначе, это применяется ко всем. Если базовая файловая система не может отличить разрешение записи владельца от того из других, то разрешение применится ко всем, независимо от этого значения.true
если и только если работа успешно выполнялась. Работа перестанет работать, если у пользователя не будет разрешения, чтобы изменить права доступа этого абстрактного пути.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к именованному файлуpublic boolean setWritable(boolean writable)
Вызов этого метода формы file.setWritable(arg) ведет себя точно таким же образом как вызов
file.setWritable(arg, true)
writable
- Если true
, устанавливает право доступа, чтобы позволить операции записи; если false
отвергнуть операции записиtrue
если и только если работа успешно выполнялась. Работа перестанет работать, если у пользователя не будет разрешения, чтобы изменить права доступа этого абстрактного пути.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к файлуpublic boolean setReadable(boolean readable, boolean ownerOnly)
Files
класс определяет методы, которые работают на атрибутах файла включая полномочия файла. Это может использоваться, когда более прекрасное манипулирование полномочиями файла требуется.
readable
- Если true
, устанавливает право доступа, чтобы позволить операции чтения; если false
отвергнуть операции чтенияownerOnly
- Если true
, разрешение чтения применяется только к разрешению чтения владельца; иначе, это применяется ко всем. Если базовая файловая система не может отличить разрешение чтения владельца от того из других, то разрешение применится ко всем, независимо от этого значения.true
если и только если работа успешно выполнялась. Работа перестанет работать, если у пользователя не будет разрешения, чтобы изменить права доступа этого абстрактного пути. Если readable
false
и базовая файловая система не реализует разрешение чтения, тогда работа перестанет работать.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к файлуpublic boolean setReadable(boolean readable)
Вызов этого метода формы file.setReadable(arg) ведет себя точно таким же образом как вызов
file.setReadable(arg, true)
readable
- Если true
, устанавливает право доступа, чтобы позволить операции чтения; если false
отвергнуть операции чтенияtrue
если и только если работа успешно выполнялась. Работа перестанет работать, если у пользователя не будет разрешения, чтобы изменить права доступа этого абстрактного пути. Если readable
false
и базовая файловая система не реализует разрешение чтения, тогда работа перестанет работать.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к файлуpublic boolean setExecutable(boolean executable, boolean ownerOnly)
Files
класс определяет методы, которые работают на атрибутах файла включая полномочия файла. Это может использоваться, когда более прекрасное манипулирование полномочиями файла требуется.
executable
- Если true
, устанавливает право доступа, чтобы позволить, выполняют операции; если false
чтобы отвергнуть выполняют операцииownerOnly
- Если true
, выполнить разрешение применяется только владельцу, выполняют разрешение; иначе, это применяется ко всем. Если базовая файловая система не может различить, владелец выполняют разрешение от того из других, то разрешение применится ко всем, независимо от этого значения.true
если и только если работа успешно выполнялась. Работа перестанет работать, если у пользователя не будет разрешения, чтобы изменить права доступа этого абстрактного пути. Если executable
false
и базовая файловая система не реализует выполнить разрешение, тогда работа перестанет работать.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к файлуpublic boolean setExecutable(boolean executable)
Вызов этого метода формы file.setExcutable(arg) ведет себя точно таким же образом как вызов
file.setExecutable(arg, true)
executable
- Если true
, устанавливает право доступа, чтобы позволить, выполняют операции; если false
чтобы отвергнуть выполняют операцииtrue
если и только если работа успешно выполнялась. Работа перестанет работать, если у пользователя не будет разрешения, чтобы изменить права доступа этого абстрактного пути. Если executable
false
и базовая файловая система не реализует экс-симпатичное разрешение, тогда работа перестанет работать.SecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод отрицает доступ для записи к файлуpublic boolean canExecute()
true
если и только если абстрактный путь существует, и приложению позволяют выполнить файлSecurityException
- Если менеджер безопасности существует и SecurityManager.checkExec(java.lang.String)
метод отрицает доступ на выполнение к файлуpublic static File[] listRoots()
Определенная платформа Java может поддерживать нуль или более иерархически организованные файловые системы. У каждой файловой системы есть a root
каталог, из которого могут быть достигнуты все другие файлы в той файловой системе. У платформ Windows, например, есть корневой каталог для каждого активного диска; у платформ UNIX есть единственный корневой каталог, а именно, "/"
. На набор доступных корней файловой системы влияют различные операции на уровне системы, такие как вставка или извлечение съемных носителей и разъединение или размонтирование дисков физического или виртуального диска.
Этот метод возвращает массив File
объекты, которые обозначают корневые каталоги доступных корней файловой системы. Гарантируется, что канонический путь любого файла, физически существующего на локальной машине, начнется с одного из корней, возвращенных этим методом.
Канонический путь файла, который находится на некоторой другой машине и получается доступ через протокол удаленной файловой системы, такой как SMB или NFS, может или, возможно, не начинается с одного из корней, возвращенных этим методом. Если путь удаленного файла будет синтаксически неотличим от пути локального файла тогда, то это начнется с одного из корней, возвращенных этим методом. Таким образом, например, File
объекты, обозначающие корневые каталоги подключенных сетевых дисков платформы Windows, будут возвращены этим методом, в то время как File
объекты, содержащие пути ПРОТОКОЛА INTERNET, не будут возвращены этим методом.
В отличие от большинства методов в этом классе, этот метод не выдает исключения безопасности. Если менеджер безопасности существует и SecurityManager.checkRead(String)
метод отрицает доступ для чтения к определенному корневому каталогу, тогда тот каталог не будет появляться в результате.
File
объекты, обозначающие доступные корни файловой системы, или null
если набор корней не мог бы быть определен. Массив будет пуст, если не будет никаких корней файловой системы.FileStore
public long getTotalSpace()
SecurityException
- Если менеджер безопасности был установлен, и он отрицает RuntimePermission
("getFileSystemAttributes") или SecurityManager.checkRead(String)
метод отрицает доступ для чтения к файлу, названному этим абстрактным путемpublic long getFreeSpace()
Возвращенное число освобожденных байтов является подсказкой, но не гарантией, которую возможно использовать больше всего или любой из этих байтов. Число освобожденных байтов, наиболее вероятно, сразу будет точно после этого вызова. Это, вероятно, будет сделано неточным любыми внешними операциями ввода-вывода включая сделанных на системе за пределами этой виртуальной машины. Этот метод не делает гарантии, что операции записи к этой файловой системе успешно выполнятся.
getTotalSpace()
.SecurityException
- Если менеджер безопасности был установлен, и он отрицает RuntimePermission
("getFileSystemAttributes") или SecurityManager.checkRead(String)
метод отрицает доступ для чтения к файлу, названному этим абстрактным путемpublic long getUsableSpace()
getFreeSpace()
. Возвращенное число доступных байтов является подсказкой, но не гарантией, которую возможно использовать больше всего или любой из этих байтов. Число освобожденных байтов, наиболее вероятно, сразу будет точно после этого вызова. Это, вероятно, будет сделано неточным любыми внешними операциями ввода-вывода включая сделанных на системе за пределами этой виртуальной машины. Этот метод не делает гарантии, что операции записи к этой файловой системе успешно выполнятся.
getFreeSpace()
.SecurityException
- Если менеджер безопасности был установлен, и он отрицает RuntimePermission
("getFileSystemAttributes") или SecurityManager.checkRead(String)
метод отрицает доступ для чтения к файлу, названному этим абстрактным путемpublic static File createTempFile(String prefix, String suffix, File directory) throws IOException
Создает новый пустой файл в указанном каталоге, используя данный префикс и суффиксные строки, чтобы генерировать его имя. Если этот метод возвратится успешно тогда, то гарантируется что:
deleteOnExit()
метод. prefix
параметром должны быть по крайней мере три символа долго. Рекомендуется, чтобы префикс был короткой, значимой строкой такой как "hjb"
или "mail"
. suffix
параметр может быть null
, когда суффикс ".tmp"
будет использоваться.
Чтобы создать новый файл, префикс и суффикс могут сначала быть скорректированы, чтобы соответствовать ограничениям базовой платформы. Если префикс будет слишком длинным тогда, то это будет усеченным, но его первые три символа будут всегда сохраняться. Если суффикс будет слишком длинным тогда, то это также будет усеченным, но если это начинается с символа точки ('.'
) тогда период и первые три символа после него будут всегда сохраняться. Как только эти корректировки сделались, имя нового файла будет сгенерировано, связывая префикс, пять или больше внутренне сгенерированных символов, и суффикс.
Если directory
параметр null
тогда системно-зависимый каталог временного файла по умолчанию будет использоваться. Каталог временного файла по умолчанию определяется системным свойством java.io.tmpdir
. На системах UNIX значение по умолчанию этого свойства обычно "/tmp"
или "/var/tmp"
; на системах Microsoft Windows это обычно "C:\\WINNT\\TEMP"
. Различное значение может быть дано этому системному свойству, когда виртуальная машина Java будет вызвана, но программируемые изменения к этому свойству, как гарантируют, не будут иметь эффекта на временный каталог, используемый этим методом.
prefix
- Префиксная строка, которая будет использоваться в генерировании имени файла; должны быть по крайней мере три символа долгоsuffix
- Суффиксная строка, которая будет использоваться в генерировании имени файла; может быть null
, когда суффикс ".tmp"
будет использоватьсяdirectory
- Каталог, в котором файл должен быть создан, или null
если каталог временного файла по умолчанию должен использоватьсяIllegalArgumentException
- Если prefix
параметр содержит меньше чем три символаIOException
- Если файл не мог бы быть созданSecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод не позволяет файлу создаватьсяpublic static File createTempFile(String prefix, String suffix) throws IOException
createTempFile(prefix, suffix, null)
. Files.createTempFile
метод обеспечивает альтернативный метод, чтобы создать пустой файл в каталоге временного файла. Файлы, создаваемые тем методом, могут иметь более рестриктивные права доступа к файлам, создаваемым этим методом, и так могут более подходить для чувствительных к безопасности приложений.
prefix
- Префиксная строка, которая будет использоваться в генерировании имени файла; должны быть по крайней мере три символа долгоsuffix
- Суффиксная строка, которая будет использоваться в генерировании имени файла; может быть null
, когда суффикс ".tmp"
будет использоватьсяIllegalArgumentException
- Если prefix
параметр содержит меньше чем три символаIOException
- Если файл не мог бы быть созданSecurityException
- Если менеджер безопасности существует и SecurityManager.checkWrite(java.lang.String)
метод не позволяет файлу создаватьсяFiles.createTempDirectory(String,FileAttribute[])
public int compareTo(File pathname)
compareTo
в интерфейсе Comparable<File>
pathname
- Абстрактный путь, чтобы быть по сравнению с этим абстрактным путемpublic boolean equals(Object obj)
true
если и только если параметр не null
и абстрактный путь, который обозначает тот же самый файл или каталог как этот абстрактный путь. Равны ли два абстрактных пути, зависит от базовой системы. На системах UNIX алфавитный случай является существенным в сравнении путей; на системах Microsoft Windows это не.equals
в классе Object
obj
- Объект быть по сравнению с этим абстрактным путемtrue
если и только если объекты являются тем же самым; false
иначеObject.hashCode()
, HashMap
public int hashCode()
1234321
. На системах Microsoft Windows хэш-код равен монопольному или хэш-кода его строки пути, преобразованной в нижний регистр и десятичное значение 1234321
. Локаль не принимается во внимание при печатании строчными литерами строки пути.hashCode
в классе Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public String toString()
getPath()
метод.public Path toPath()
java.nio.file.Path
объект создается из этого абстрактного пути. Получающееся Path
связывается с default-filesystem
. Первый вызов этого метода работает, как будто вызов этого был эквивалентен оценке выражения:
Последующие вызовы этого метода возвращают то же самоеFileSystems.getDefault
().getPath
(this.getPath
());
Path
. Если этот абстрактный путь является пустым абстрактным путем тогда, этот метод возвращает a Path
это может использоваться, чтобы получить доступ к текущему пользовательскому каталогу.
Path
созданный из этого абстрактного путиInvalidPathException
- если a Path
объект не может быть создан из абстрактного пути (см. FileSystem.getPath
)Path.toFile()
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.