File Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Абстрактное представление имен пути к файлам и каталогам.
[Android.Runtime.Register("java/io/File", DoNotGenerateAcw=true)]
public class File : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.IComparable
[<Android.Runtime.Register("java/io/File", DoNotGenerateAcw=true)>]
type File = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface IComparable
- Наследование
- Атрибуты
- Реализации
Комментарии
Абстрактное представление имен путей к файлам и каталогам.
Пользовательские интерфейсы и операционные системы используют зависящие от <системы строки< имени пути em>/em> для имен файлов и каталогов. Этот класс представляет абстрактное системно-независимое представление иерархических имен путей. >Em <abstract pathname</em> состоит из двух компонентов:
<ol><li> — необязательная зависимая от <системы строка префикса< em>/em>, например описатель диска диска, "/"
для корневого каталога UNIX или "\\\\"
для имени UNC-пути Microsoft Windows и <li> A последовательность с нулевым или более строковыми <именами< em>/em>. </Пр>
Первое имя в абстрактном имени пути может быть именем каталога или, в случае имен UNC-путей Microsoft Windows, именем узла. Каждое последующее имя в абстрактном имени пути обозначает каталог; фамилия может обозначать каталог или файл. >Em <empty</em> abstract pathname не имеет префикса и пустой последовательности имен.
Преобразование строки pathname в абстрактное имя пути или из нее изначально зависит от системы. При преобразовании абстрактного имени пути в строку pathname каждое имя отделяется от следующего одной копией символа-разделителя em по умолчанию <или em>.>< Символ разделителя имен по умолчанию определяется системным свойством file.separator
и становится доступным в общедоступных статических полях {@link #separator}
и {@link #separatorChar}
этого класса. При преобразовании строки pathname в абстрактное имя пути имена в ней могут быть разделены символом-разделителем имен по умолчанию или любым другим символом-разделителем имен, поддерживаемым базовой системой.
Путь, абстрактный или в строковой форме, может иметь значение em absolute/em> или <em>relative</em>.<>< Абсолютный путь является полным в том случае, что для поиска файла, который он обозначает, не требуется никаких других сведений. Относительный путь, напротив, должен интерпретироваться с точки зрения информации, взятой из какого-то другого pathname. По умолчанию классы в пакете java.io
всегда разрешают относительные имена путей в текущем каталоге пользователя. Этот каталог называется системным свойством user.dir
и обычно является каталогом, в котором была вызвана виртуальная машина Java.
>Em <parent</em> абстрактного pathname можно получить путем вызова #getParent
метода этого класса и состоит из префикса pathname и каждого имени в последовательности имен pathname, за исключением последнего. Абсолютное имя пути каждого каталога является предком любого File
объекта с абсолютным абстрактным именем пути, которое начинается с абсолютного имени пути каталога. Например, каталог, обозначенный абстрактным именем пути "/usr"
, является предком каталога, обозначаемого именем "/usr/local/bin"
пути .
Концепция префикса используется для обработки корневых каталогов на платформах UNIX, а также описателей дисков, корневых каталогов и имен путей UNC на платформах Microsoft Windows следующим образом:
<ul>
<Li> Для платформ UNIX префикс абсолютного имени пути всегда "/"
имеет значение . Относительные имена путей не имеют префикса. Абстрактное имя пути, обозначающее корневой каталог, имеет префикс "/"
и пустую последовательность имен.
<Li> Для платформ Microsoft Windows префикс имени пути, содержащего описатель диска, состоит из буквы диска, за ":"
которой следует и, возможно, после которого следует , если путь является абсолютным "\\"
. Префикс UNC pathname — ; "\\\\"
имя узла и имя общей папки являются первыми двумя именами в последовательности имен. Относительный путь, не указывающий диск, не имеет префикса.
</ul>
Экземпляры этого класса могут обозначать или не обозначать фактический объект файловой системы, например файл или каталог. Если он обозначает такой объект, этот объект находится в секции. Раздел — это часть хранилища файловой системы, относящаяся к операционной системе. Одно запоминающее устройство (например, физический диск, флэш-память, компакт-диск) может содержать несколько разделов. Объект , если таковой имеется, будет находиться в секции "partName">, именуемой каким-либо предком абсолютной формы этого pathname.
Файловая система может применять ограничения для определенных операций с фактическим объектом файловой системы, таких как чтение, запись и выполнение. Эти ограничения в совокупности называются разрешениями доступа. Файловая система может иметь несколько наборов разрешений на доступ к одному объекту. Например, один набор может применяться к владельцу объекта, а другой — ко всем остальным пользователям. Разрешения на доступ к объекту могут привести к сбою некоторых методов в этом классе.
Экземпляры File
класса являются неизменяемыми, то есть после создания абстрактное имя пути, представленное File
объектом, никогда не изменится.
<h3>Взаимодействие с java.nio.file
пакетом</h3>
Пакет <c>java.nio.file</c> определяет интерфейсы и классы для виртуальной машины Java для доступа к файлам, атрибутам файлов и файловых системам. Этот API можно использовать для преодоления многих ограничений java.io.File
класса . Метод #toPath toPath
может использоваться для получения Path
объекта , использующего абстрактный путь, представленный File
объектом для поиска файла. Полученный результат Path
можно использовать с классом java.nio.file.Files
, чтобы обеспечить более эффективный и обширный доступ к дополнительным операциям с файлами, атрибутам файлов и исключениям ввода-вывода для диагностики ошибок при сбое операции с файлом.
В Android строки преобразуются в последовательности байтов UTF-8 при отправке имен файлов в операционную систему, а байтовые последовательности, возвращаемые операционной системой (из различных list
методов), преобразуются в строки, декодируя их как последовательности байтов UTF-8.
Добавлено в JDK1.0.
Документация по Java для java.io.File
.
Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.
Конструкторы
File(File, String) |
Создает новый |
File(IntPtr, JniHandleOwnership) |
Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения. |
File(String) |
Создает новый |
File(String, String) |
Создает новый |
File(URI) |
Создает новый |
Свойства
AbsoluteFile |
Возвращает абсолютную форму этого абстрактного имени пути. |
AbsolutePath |
Возвращает абсолютный путь к этому файлу. |
CanonicalFile |
Возвращает каноническую форму этого абстрактного имени пути. |
CanonicalPath |
Возвращает каноническую строку pathname этого абстрактного имени пути. |
Class |
Возвращает класс среды выполнения данного объекта |
FreeSpace |
Возвращает количество нераспределенных байтов в секции с именем этого абстрактного пути. |
Handle |
Дескриптор базового экземпляра Android. (Унаследовано от Object) |
IsAbsolute |
Проверяет, является ли этот абстрактный путь абсолютным. |
IsDirectory |
Проверяет, является ли файл, обозначенный этим абстрактным именем пути, каталогом. |
IsFile |
Проверяет, является ли файл, обозначенный этим абстрактным именем пути, обычным. |
IsHidden |
Проверяет, является ли файл с именем этого абстрактного пути скрытым файлом. |
JniIdentityHashCode |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
JniPeerMembers |
Абстрактное представление имен пути к файлам и каталогам. |
Name |
Возвращает имя файла или каталога, обозначенного этим абстрактным именем пути. |
Parent |
Возвращает строку pathname родительского объекта этого абстрактного пути или |
ParentFile |
Возвращает абстрактный путь родительского элемента этого абстрактного пути или значение , |
Path |
Преобразует это абстрактное имя пути в строку pathname. |
PathSeparator |
Системный символ разделителя пути, представленный в виде строки для удобства. |
PathSeparatorChar |
Системный символ разделителя пути. |
PeerReference |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
Separator |
Системный символ разделителя имен и разделителей по умолчанию, представленный в виде строки для удобства. |
SeparatorChar |
Зависимый от системы символ разделителя имен и разделителей по умолчанию. |
ThresholdClass |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
ThresholdType |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
TotalSpace |
Возвращает размер секции с именем этого абстрактного пути. |
UsableSpace |
Возвращает количество байтов, доступных этой виртуальной машине в секции с именем этого абстрактного пути. |
Методы
CanExecute() |
Проверяет, может ли приложение выполнить файл, обозначенный этим абстрактным именем пути. |
CanRead() |
Проверяет, может ли приложение прочитать файл, обозначенный этим абстрактным именем пути. |
CanWrite() |
Проверяет, может ли приложение изменить файл, обозначенный этим абстрактным именем пути. |
Clone() |
Создает и возвращает копию этого объекта. (Унаследовано от Object) |
CompareTo(File) |
Сравнивает два абстрактных имена пути лексикографически. |
CreateNewFile() |
Атомарно создает новый пустой файл с именем этого абстрактного пути, если и только в том случае, если файл с таким именем еще не существует. |
CreateTempFile(String, String) |
Создает пустой файл в каталоге временных файлов по умолчанию, используя заданный префикс и суффикс для создания его имени. |
CreateTempFile(String, String, File) |
Создает пустой файл в указанном каталоге, используя заданные строки префикса и суффикса для создания его имени. |
Delete() |
Удаляет файл или каталог, обозначенные этим абстрактным именем пути. |
DeleteOnExit() |
Запрашивает удаление файла или каталога, обозначенных этим абстрактным именем пути, при завершении работы виртуальной машины. |
Dispose() |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
Dispose(Boolean) |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
Equals(Object) |
Указывает, равен ли какой-то другой объект этому объекту. (Унаследовано от Object) |
Exists() |
Проверяет, существует ли файл или каталог, обозначенный этим абстрактным именем пути. |
GetHashCode() |
Возвращает значение хэш-кода для объекта. (Унаследовано от Object) |
JavaFinalize() |
Вызывается сборщиком мусора для объекта , когда сборка мусора определяет, что больше нет ссылок на объект . (Унаследовано от Object) |
LastModified() |
Возвращает время последнего изменения файла, обозначенного этим абстрактным именем пути. |
Length() |
Возвращает длину файла, обозначенного этим абстрактным именем пути. |
List() |
Возвращает массив строк, именующих файлы и каталоги в каталоге, обозначенном этим абстрактным именем пути. |
List(IFilenameFilter) |
Возвращает массив строк, именующих файлы и каталоги в каталоге, обозначенном этим абстрактным именем пути, который удовлетворяет указанному фильтру. |
ListAsync() |
Абстрактное представление имен пути к файлам и каталогам. |
ListAsync(IFilenameFilter) |
Абстрактное представление имен пути к файлам и каталогам. |
ListFiles() |
Возвращает массив абстрактных имен путей, обозначающих файлы в каталоге, обозначенном этим абстрактным именем пути. |
ListFiles(IFileFilter) |
Возвращает массив абстрактных имен путей, обозначающих файлы и каталоги в каталоге, обозначенном этим абстрактным именем пути, который удовлетворяет указанному фильтру. |
ListFiles(IFilenameFilter) |
Возвращает массив абстрактных имен путей, обозначающих файлы и каталоги в каталоге, обозначенном этим абстрактным именем пути, который удовлетворяет указанному фильтру. |
ListFilesAsync() |
Абстрактное представление имен пути к файлам и каталогам. |
ListFilesAsync(IFileFilter) |
Абстрактное представление имен пути к файлам и каталогам. |
ListFilesAsync(IFilenameFilter) |
Абстрактное представление имен пути к файлам и каталогам. |
ListRoots() |
Возвращает корневые элементы файловой системы. |
ListRootsAsync() |
Абстрактное представление имен пути к файлам и каталогам. |
Mkdir() |
Создает каталог с именем этого абстрактного пути. |
Mkdirs() |
Создает каталог с именем этого абстрактного имени пути, включая все необходимые, но несуществующие родительские каталоги. |
Notify() |
Пробуждение одного потока, ожидающего на мониторе этого объекта. (Унаследовано от Object) |
NotifyAll() |
Активирует все потоки, ожидающие на мониторе этого объекта. (Унаследовано от Object) |
RenameTo(File) |
Переименовывает файл, обозначенный этим абстрактным именем пути. |
SetExecutable(Boolean) |
Удобный метод для установки разрешения на выполнение владельца для этого абстрактного имени пути. |
SetExecutable(Boolean, Boolean) |
Задает разрешение на выполнение владельца или всех пользователей для этого абстрактного имени пути. |
SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
SetLastModified(Int64) |
Задает время последнего изменения файла или каталога с именем этого абстрактного пути. |
SetReadable(Boolean) |
Удобный метод для задания разрешения владельца на чтение для этого абстрактного имени пути. |
SetReadable(Boolean, Boolean) |
Задает разрешение владельца или всех пользователей на чтение для этого абстрактного имени пути. |
SetReadOnly() |
Помечает файл или каталог с именем этого абстрактного пути, чтобы разрешались только операции чтения. |
SetWritable(Boolean) |
Удобный метод для задания разрешения владельца на запись для этого абстрактного имени пути. |
SetWritable(Boolean, Boolean) |
Задает разрешение владельца или всех пользователей на запись для этого абстрактного имени пути. |
ToArray<T>() |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
ToPath() |
Возвращает объект, |
ToString() |
Возвращает строковое представление объекта. (Унаследовано от Object) |
ToURI() |
Создает универсальный |
ToURL() |
Устаревшие..
Преобразует это абстрактное имя пути в |
UnregisterFromRuntime() |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
Wait() |
Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления/><em> или <прерывания></em>. (Унаследовано от Object) |
Wait(Int64) |
Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления</>em>, <>прерывания< или> em, либо до истечения определенного количества реального времени. (Унаследовано от Object) |
Wait(Int64, Int32) |
Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления</>em>, <>прерывания< или> em, либо до истечения определенного количества реального времени. (Унаследовано от Object) |
Явные реализации интерфейса
IComparable.CompareTo(Object) |
Абстрактное представление имен пути к файлам и каталогам. |
IJavaPeerable.Disposed() |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
IJavaPeerable.Finalized() |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
IJavaPeerable.JniManagedPeerState |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Абстрактное представление имен пути к файлам и каталогам. (Унаследовано от Object) |
Методы расширения
JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверенное средой выполнения Android. |
JavaCast<TResult>(IJavaObject) |
Абстрактное представление имен пути к файлам и каталогам. |
GetJniTypeName(IJavaPeerable) |
Абстрактное представление имен пути к файлам и каталогам. |