NSFileWrapper
NSFileWrapper
класс обеспечивает доступ к атрибутам и содержанию узлов файловой системы. Узел файловой системы является файлом, каталогом или символьной ссылкой. Экземпляры этого класса известны как обертки файла.
Обертки файла представляют узел файловой системы как объект, который может быть выведен на экран как изображение (и возможно отредактирован на месте), сохраненный к файловой системе, или передал к другому приложению.
Существует три типа оберток файла:
Обертка файла регулярного файла: Представляет регулярный файл.
Обертка файла каталога: Представляет каталог.
Обертка файла символьной ссылки: Представляет символьную ссылку.
Обертка файла имеет эти атрибуты:
Имя файла. Имя узла файловой системы обертка файла представляет.
атрибуты файловой системы. Посмотрите Ссылку класса NSFileManager для получения информации о содержании
attributes
словарь.Содержание регулярного файла. Применимый только к оберткам файла регулярного файла.
Обертки файла. Применимый только к оберткам файла каталога.
Узел назначения. Применимый только к оберткам файла символьной ссылки.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSObjectProtocol
-
Печатаемый
-
NSCoding
-
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
Этот класс имеет несколько определяемых инициализаторов.
-
init (URL:options:error:) - initWithURL:options:error:
Определяемый инициализаторИнициализирует экземпляр обертки файла, вид которого определяется типом узла файловой системы, расположенного URL.
Объявление
Swift
init?(URL
url
: NSURL, optionsoptions
: NSFileWrapperReadingOptions, erroroutError
: NSErrorPointer)Objective C
- (instancetype)initWithURL:(NSURL *)
url
options:(NSFileWrapperReadingOptions)options
error:(NSError **)outError
Параметры
url
URL узла файловой системы обертка файла должен представлять.
options
Опция отмечает для чтения узла, расположенного в
url
. Посмотрите, что Обертка Файла Читает Опции для возможных значений.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему. ПередачаNULL
если Вы не хотите информации об ошибке.Возвращаемое значение
Обертка файла для узла файловой системы в
url
. Может быть каталог, файл или символьная ссылка, в зависимости от того, что расположено в URL. ВозвратыNO
false
(0) если чтение не успешно.Обсуждение
Если
url
каталог, этот метод рекурсивно создает обертки файла для каждого узла в том каталоге. ИспользуйтеfileWrappers
свойство для получения оберток файла узлов, содержавших каталогом.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
init (путь:) - initWithPath:
(OS X v10.10)Инициализирует экземпляр обертки файла, вид которого определяется типом узла файловой системы, расположенного путем.
Оператор осуждения
Использовать
initWithURL:options:error:
вместо этого.Объявление
Swift
convenience init?(path
node
: String)Objective C
- (id)initWithPath:(NSString *)
node
Параметры
node
Путь узла файловой системы обертка файла должен представлять.
Возвращаемое значение
Обертка файла для
node
.Обсуждение
Если
node
каталог, этот метод рекурсивно создает обертки файла для каждого узла в том каталоге.Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Поэтому этот метод был осужден в пользуinitWithURL:options:error:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
См. также
-
init (directoryWithFileWrappers:) - initDirectoryWithFileWrappers:
Определяемый инициализаторИнициализирует получатель как обертку файла каталога, с данным списком обертки файла.
Объявление
Swift
init(directoryWithFileWrappers
childrenByPreferredName
: [NSObject : AnyObject])Objective C
- (instancetype)initDirectoryWithFileWrappers:(NSDictionary *)
childrenByPreferredName
Параметры
childrenByPreferredName
Словарь значения ключа оберток файла, с которыми можно инициализировать получатель. Словарь должен содержать записи, значения которых являются обертками файла, которые должны стать дочерними элементами и чьи ключи являются именами файлов. Посмотрите Работу с Обертками Каталога в Руководстве по программированию Файловой системы для получения дополнительной информации о структуре списка обертки файла.
Возвращаемое значение
Инициализированная обертка файла для
fileWrappers
.Обсуждение
После инициализации обертка файла не связана с узлом файловой системы, пока Вы не сохраняете его использование
writeToURL:options:originalContentsURL:error:
.Получатель инициализируется с открытыми полномочиями: любой может читать, записать или изменить каталог на диске.
Если какая-либо обертка файла в каталоге не имеет предпочтительного имени файла, его предпочтительное имя автоматически определяется к его соответствующему ключу
childrenByPreferredName
словарь.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
init (regularFileWithContents:) - initRegularFileWithContents:
Определяемый инициализаторИнициализирует получатель как обертку файла регулярного файла.
Объявление
Swift
init(regularFileWithContents
contents
: NSData)Objective C
- (instancetype)initRegularFileWithContents:(NSData *)
contents
Параметры
contents
Содержание файла.
Возвращаемое значение
Инициализированная обертка файла регулярного файла, содержащая
contents
.Обсуждение
После инициализации обертка файла не связана с узлом файловой системы, пока Вы не сохраняете его использование
writeToURL:options:originalContentsURL:error:
.Обертка файла инициализируется с открытыми полномочиями: любой может записать в или считать обертку файла.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует получатель как обертку файла символьной ссылки.
Оператор осуждения
Использовать
initSymbolicLinkWithDestinationURL:
вместо этого.Объявление
Swift
convenience init(symbolicLinkWithDestination
node
: String)Objective C
- (id)initSymbolicLinkWithDestination:(NSString *)
node
Параметры
node
Путь получатель должен представлять.
Возвращаемое значение
Инициализированная ссылка обертки файла символьной ссылки
node
.Обсуждение
Получатель не связан с узлом файловой системы, пока Вы не сохраняете его использование
writeToFile:atomically:updateFilenames:
. Это также инициализируется с открытыми полномочиями; любой может считать или записать дисковые представления, которые это сохраняет.Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Поэтому этот метод был осужден в пользуinitSymbolicLinkWithDestinationURL:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
См. также
-
init (symbolicLinkWithDestinationURL:) - initSymbolicLinkWithDestinationURL:
Определяемый инициализаторИнициализирует получатель как обертку файла символьной ссылки, соединяющуюся с указанным файлом.
Объявление
Swift
init(symbolicLinkWithDestinationURL
url
: NSURL)Objective C
- (instancetype)initSymbolicLinkWithDestinationURL:(NSURL *)
url
Параметры
url
URL файла обертка файла должен сослаться.
Возвращаемое значение
Инициализированная ссылка обертки файла символьной ссылки
url
.Обсуждение
Обертка файла не связана с узлом файловой системы, пока Вы не сохраняете ее использование
writeToURL:options:originalContentsURL:error:
.Обертка файла инициализируется с открытыми полномочиями: любой может изменить или считать ссылку на файл..
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
См. также
-
init (serializedRepresentation:) - initWithSerializedRepresentation:
Определяемый инициализаторИнициализирует получатель как обертку файла регулярного файла от данных сериализированных данных.
Объявление
Swift
init?(serializedRepresentation
serializedRepresentation
: NSData)Objective C
- (instancetype)initWithSerializedRepresentation:(NSData *)
serializedRepresentation
Параметры
serializedRepresentation
Сериализированное представление обертки файла в формате, используемом для
NSFileContentsPboardType
тип области монтажа. Данные этого формата возвращаются такими методами какserializedRepresentation
иRTFDFromRange:documentAttributes:
(NSAttributedString
).Возвращаемое значение
Обертка файла регулярного файла, инициализированная от
serializedRepresentation
.Обсуждение
Обертка файла не связана с узлом файловой системы, пока Вы не сохраняете ее использование
writeToURL:options:originalContentsURL:error:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
regularFile regularFile
СвойствоЭто свойство содержит булево значение, указывающее, является ли интерфейсный объект файла регулярным файлом. (только для чтения)
Объявление
Swift
var regularFile: Bool { get }
Objective C
@property(readonly, getter=isRegularFile) BOOL regularFile
Обсуждение
Это свойство содержит
YES
true
когда интерфейсный объект файла является оберткой регулярного файла, иначе он содержитNO
false
. ВызовыreadFromURL:options:error:
если тип файла на диске изменился, может изменить значение этого свойства.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Это свойство содержит булево значение, указывающее, является ли обертка файла оберткой файла каталога. (только для чтения)
Объявление
Swift
var directory: Bool { get }
Objective C
@property(readonly, getter=isDirectory) BOOL directory
Обсуждение
Это свойство будет содержать YES, когда обертка файла будет оберткой файла каталога, иначе это содержит НЕТ.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
symbolicLink symbolicLink
СвойствоБулевская переменная, указывающая, является ли интерфейсный объект файла оберткой файла символьной ссылки. (только для чтения)
Объявление
Swift
var symbolicLink: Bool { get }
Objective C
@property(readonly, getter=isSymbolicLink) BOOL symbolicLink
Обсуждение
Это свойство содержит
YES
true
когда интерфейсный объект файла является оберткой файла символьной ссылки,NO
false
иначе.Вызовы
readFromURL:options:error:
если тип файла на диске изменился, может изменить значение, содержавшее этим свойством.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
fileWrappers fileWrappers
СвойствоОбертки файла содержатся оберткой файла каталога. (только для чтения)
Объявление
Swift
var fileWrappers: [NSObject : AnyObject] { get }
Objective C
@property(readonly, copy) NSDictionary *fileWrappers
Обсуждение
Словарь содержит записи, значения которых являются обертками файла и чьи ключи являются уникальными именами файлов, присвоенными каждому. Посмотрите Работу с Обертками Каталога в Руководстве по программированию Файловой системы для получения дополнительной информации о структуре списка обертки файла.
Это свойство может содержать
nil
если пользователь изменяет каталог после вызоваreadFromURL:options:error:
илиinitWithURL:options:error:
но преждеNSFileWrapper
считал содержание каталога. ИспользуйтеNSFileWrapperReadingImmediate
чтение опции сократить вероятность той проблемы.Специальные замечания
Это свойство повышения
NSInternalInconsistencyException
если интерфейсный объект файла не является оберткой файла каталога.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Добавляет дочерняя обертка файла к получателю, который должен быть оберткой файла каталога.
Объявление
Swift
func addFileWrapper(_
child
: NSFileWrapper) -> StringObjective C
- (NSString *)addFileWrapper:(NSFileWrapper *)
child
Параметры
child
Обертка файла для добавления к каталогу.
Возвращаемое значение
Ключ Dictionary раньше хранил
fileWrapper
в списке каталога оберток файла. Ключ словаря является уникальным именем файла, совпадающим с переданным - в предпочтительном имени файла обертки файла, если то имя уже не используется как ключ в словаре каталога дочерних элементов. Посмотрите Работу с Обертками Каталога в Руководстве по программированию Файловой системы для получения дополнительной информации о структуре списка обертки файла.Обсуждение
Используйте этот метод для добавления существующей обертки файла как дочернего элемента обертки файла каталога. Если обертка файла не имеет предпочтительного имени файла, установите
preferredFilename
свойство для предоставления его один перед вызовомaddFileWrapper:
. Чтобы создать новую обертку файла и добавить его к каталогу, используйтеaddRegularFileWithContents:preferredFilename:
метод.Специальные замечания
Этот метод повышения
NSInternalInconsistencyException
если получатель не является оберткой файла каталога.Этот метод повышения
NSInvalidArgumentException
если дочерняя обертка файла не имеет предпочтительного имени.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет дочернюю обертку файла из получателя, который должен быть оберткой файла каталога.
Объявление
Swift
func removeFileWrapper(_
child
: NSFileWrapper)Objective C
- (void)removeFileWrapper:(NSFileWrapper *)
child
Параметры
child
Обертка файла для удаления из каталога.
Специальные замечания
Этот метод повышения
NSInternalInconsistencyException
если получатель не является оберткой файла каталога.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
addFileWithPath (_:) - addFileWithPath:
(OS X v10.10)Создает обертку файла из данного узла файловой системы и добавляет его к получателю, который должен быть оберткой файла каталога.
Оператор осуждения
Использовать
addFileWrapper:
вместо этого.Объявление
Параметры
node
узел файловой системы, от которого можно создать обертку файла для добавления к каталогу.
Возвращаемое значение
Ключ Dictionary раньше хранил новую обертку файла в списке каталога оберток файла. Посмотрите Работу с Обертками Каталога в Руководстве по программированию Файловой системы для получения дополнительной информации.
Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Вместо того, чтобы использовать этот метод, можно инстанцироватьNSFileWrapper
с одним из инициализаторов, наборpreferredFilename
свойство при необходимости и передача результат кaddFileWrapper:
.Этот метод повышения
NSInternalInconsistencyException
если получатель не является оберткой файла каталога.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
Создает обертку файла регулярного файла с данным содержанием и добавляет его к получателю, который должен быть оберткой файла каталога.
Объявление
Параметры
data
Содержание для новой обертки файла регулярного файла.
filename
Предпочтительное имя файла для новой обертки файла регулярного файла.
Возвращаемое значение
Ключ Dictionary раньше хранил новую обертку файла в списке каталога оберток файла. Ключ словаря является уникальным именем файла, совпадающим с переданным - в предпочтительном имени файла обертки файла, если то имя уже не используется как ключ в словаре каталога дочерних элементов. Посмотрите Работу с Обертками Каталога в Руководстве по программированию Файловой системы для получения дополнительной информации о структуре списка обертки файла.
Обсуждение
Это - удобный метод. Реализация по умолчанию выделяет новую обертку файла, инициализирует его с
initRegularFileWithContents:
, установитеpreferredFilename
свойство, добавляет это к каталогу сaddFileWrapper:
, и возвраты, чтоaddFileWrapper:
возвращенный.Специальные замечания
Этот метод повышения
NSInternalInconsistencyException
если получатель не является оберткой файла каталога.Этот метод повышения
NSInvalidArgumentException
если Вы передаетеnil
или пустое значение дляfilename
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
addSymbolicLinkWithDestination (_: preferredFilename:) - addSymbolicLinkWithDestination:preferredFilename:
(OS X v10.10)Создает обертку файла символьной ссылки, указывающую на данный узел файловой системы, и добавляет его к получателю, который должен быть оберткой файла каталога.
Оператор осуждения
Использовать
addFileWrapper:
вместо этого.Объявление
Параметры
node
Путь новая обертка файла символьной ссылки должен сослаться.
preferredFilename
Предпочтительное имя файла для новой обертки файла символьной ссылки.
Возвращаемое значение
Ключ Dictionary раньше хранил новую обертку файла в списке каталога оберток файла. Посмотрите Работу с Обертками Каталога в Руководстве по программированию Файловой системы для получения дополнительной информации.
Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Вместо того, чтобы использовать этот метод, можно инстанцироватьNSFileWrapper
с одним из инициализаторов, наборpreferredFilename
свойство при необходимости и передача результат кaddFileWrapper:
.Этот метод повышения
NSInternalInconsistencyException
если получатель не является оберткой файла каталога.Этот метод повышения
NSInvalidArgumentException
если Вы передаетеnil
или пустое значение дляpreferredFilename
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
Возвращает ключ словаря, используемый каталогом для идентификации данной обертки файла.
Объявление
Swift
func keyForFileWrapper(_
child
: NSFileWrapper) -> String?Objective C
- (NSString *)keyForFileWrapper:(NSFileWrapper *)
child
Параметры
child
Дочерняя обертка файла, для которой Вы хотите ключ.
Возвращаемое значение
Ключ Dictionary раньше хранил обертку файла в списке каталога оберток файла. Ключ словаря является уникальным именем файла, которое может не совпасть с переданным - в предпочтительном имени файла обертки файла, если больше чем одна обертка файла в словаре каталога дочерних элементов имеет то же предпочтительное имя файла. Посмотрите Работу с Обертками Каталога в Руководстве по программированию Файловой системы для получения дополнительной информации о структуре списка обертки файла. Возвраты
nil
если обертка файла, указанная вchild
не дочерний элемент каталога.Специальные замечания
Этот метод повышения
NSInternalInconsistencyException
если получатель не является оберткой файла каталога.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
symbolicLinkDestination () - symbolicLinkDestination
(OS X v10.10)Обеспечивает путь, на который ссылается интерфейсный объект файла, который должен быть оберткой файла символьной ссылки.
Оператор осуждения
Использовать
symbolicLinkDestinationURL
вместо этого.Объявление
Swift
func symbolicLinkDestination() -> String
Objective C
- (NSString *)symbolicLinkDestination
Возвращаемое значение
Путь ссылки обертки файла (место назначения символьной ссылки обертка файла представляет).
Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Поэтому этот метод был осужден в пользуsymbolicLinkDestinationURL
.Этот метод повышения
NSInternalInconsistencyException
если получатель не является оберткой файла символьной ссылки.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
URL, на который ссылается интерфейсный объект файла, который должен быть оберткой файла символьной ссылки. (только для чтения)
Объявление
Swift
@NSCopying var symbolicLinkDestinationURL: NSURL { get }
Objective C
@property(readonly, copy) NSURL *symbolicLinkDestinationURL
Обсуждение
Это свойство может содержать
nil
если пользователь изменяет символьную ссылку после вызоваreadFromURL:options:error:
илиinitWithURL:options:error:
но преждеNSFileWrapper
считал содержание ссылки. ИспользуйтеNSFileWrapperReadingImmediate
чтение опции сократить вероятность той проблемы.Специальные замечания
Это свойство повышения
NSInternalInconsistencyException
если интерфейсный объект файла не является оберткой файла символьной ссылки.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
needsToBeUpdatedFromPath (_:) - needsToBeUpdatedFromPath:
(OS X v10.10)Указывает, должна ли обертка файла быть обновлена для соответствия данного узла файловой системы.
Оператор осуждения
Использовать
matchesContentsOfURL:
вместо этого.Объявление
Swift
func needsToBeUpdatedFromPath(_
node
: String) -> BoolObjective C
- (BOOL)needsToBeUpdatedFromPath:(NSString *)
node
Параметры
node
узел файловой системы, с которым можно сравнить обертку файла.
Возвращаемое значение
NO
false
когда обертка файла должна быть обновлена для соответствияnode
,NO
false
иначе.Обсуждение
Эта таблица описывает который атрибуты обертки файла и
node
сравнены, чтобы определить, должна ли быть обновлена обертка файла:Тип обертки файла
Детерминанты сравнения
Регулярный файл
Дата модификации и права доступа.
Каталог
Задействованная (рекурсивная) иерархия.
Символьная ссылка
Целевой путь.
Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Поэтому этот метод был осужден в пользуmatchesContentsOfURL:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
См. также
-
Указывает, соответствует ли содержание обертки файла каталог, регулярный файл или символьную ссылку на диске.
Объявление
Swift
func matchesContentsOfURL(_
url
: NSURL) -> BoolObjective C
- (BOOL)matchesContentsOfURL:(NSURL *)
url
Параметры
url
URL узла файловой системы, с которым можно сравнить обертку файла.
Возвращаемое значение
YES
true
когда содержание обертки файла соответствует содержаниеurl
,NO
false
иначе.Обсуждение
Содержание файлов не сравнено; соответствие регулярных файлов основывается на датах модификации файла. Для каталога дочерние элементы сравнены с файлами в каталоге, рекурсивно.
Поскольку дочерние элементы оберток файла каталога сразу не читаются
initWithURL:options:error:
метод, еслиNSFileWrapperReadingImmediate
чтение опции используется, даже недавно создаваемая обертка файла каталога не могла бы иметь того же содержания как каталог на диске. Можно использовать этот метод, чтобы определить, должно ли быть обновлено содержание обертки файла в памяти.Если обертке файла нужно обновление, используйте
readFromURL:options:error:
метод сNSFileWrapperReadingImmediate
чтение опции.Эта таблица описывает, который атрибуты обертки файла и узла файловой системы сравнены, чтобы определить, соответствует ли обертка файла узел на диске:
Тип обертки файла
Детерминанты сравнения
Регулярный файл
Дата модификации и права доступа.
Каталог
(Рекурсивные) дочерние элементы.
Символьная ссылка
Целевой путь.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
updateFromPath (_:) - updateFromPath:
(OS X v10.10)Обновляет обертку файла для соответствия данного узла файловой системы.
Оператор осуждения
Использовать
readFromURL:options:error:
вместо этого.Объявление
Swift
func updateFromPath(_
path
: String) -> BoolObjective C
- (BOOL)updateFromPath:(NSString *)
path
Возвращаемое значение
YES
true
если обновление выполняется,NO
false
если это не необходимо.Обсуждение
Для обертки файла каталога также отправляются содержавшие обертки файла
updateFromPath:
сообщения. Если узлы в соответствующем каталоге в файловой системе были добавлены или удалены, соответствующие обертки файла выпущены или созданы по мере необходимости.Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Поэтому этот метод был осужден в пользуreadFromURL:options:error:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
См. также
– needsToBeUpdatedFromPath:
updateAttachmentsFromPath:
(NSAttributedString) -
Рекурсивно перечитывает все содержание обертки файла от указанного расположения на диске.
Объявление
Swift
func readFromURL(_
url
: NSURL, optionsoptions
: NSFileWrapperReadingOptions, erroroutError
: NSErrorPointer) -> BoolObjective C
- (BOOL)readFromURL:(NSURL *)
url
options:(NSFileWrapperReadingOptions)options
error:(NSError **)outError
Параметры
url
URL узла файловой системы, соответствующего обертке файла.
options
Опция отмечает для чтения узла, расположенного в
url
. Посмотрите, что Обертка Файла Читает Опции для возможных значений.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему. ПередачаNULL
если Вы не хотите информации об ошибке.Возвращаемое значение
YES
true
в случае успеха. Если не успешный, возвратыNO
false
после установкиoutError
кNSError
объект, описывающий причину, почему не могла быть перечитана обертка файла.Обсуждение
При чтении каталога дочерние элементы добавлены и удалены по мере необходимости для соответствия файловой системы.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Содержание обертки файла как непрозрачный набор данных. (только для чтения)
Объявление
Swift
@NSCopying var serializedRepresentation: NSData { get }
Objective C
@property(readonly, copy) NSData *serializedRepresentation
Обсуждение
Это свойство содержит
NSData
объект в формате используется типом области монтажаNSFileContentsPboardType
. ЭтоNSData
объект также подходит для передачиinitWithSerializedRepresentation:
.Это свойство может содержать
nil
если пользователь изменяет содержание узла файловой системы после вызоваreadFromURL:options:error:
илиinitWithURL:options:error:
но преждеNSFileWrapper
считал содержание файла. ИспользуйтеNSFileWrapperReadingImmediate
чтение опции сократить вероятность той проблемы.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Имя файла интерфейсного объекта файла
Обсуждение
Это свойство содержит имя файла обертки файла, или
nil
когда обертка файла не имеет никакого соответствующего узла файловой системы.Когда обертка файла создается из использования файловой системы, имя файла используется в целях ведения записей только и установлено автоматически
initWithURL:options:error:
и когда это сохраняется к использованию файловой системыwriteToURL:options:originalContentsURL:error:
(несмотря на то, что этот метод позволяет Вам запрашивать что имя файла не быть обновленным).Имя файла обычно является тем же как предпочтительным именем файла, но могло бы вместо этого быть именем, полученным из предпочтительного имени файла. Можно использовать этот метод для получения имени дочернего элемента, это было просто считано. Не используйте этот метод для получения имени дочернего элемента, который это собирается быть записанным, потому что имя могло бы собираться измениться; отправить
keyForFileWrapper:
к родителю вместо этого.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
preferredFilename preferredFilename
СвойствоПредпочтительное имя файла для интерфейсного объекта файла.
Объявление
Swift
var preferredFilename: String
Objective C
@property(copy) NSString *preferredFilename
Обсуждение
Когда дочерняя обертка файла добавляется к обертке файла каталога, это имя обычно используется в качестве ключа словаря. Однако, если другая обертка файла с тем же предпочтительным именем уже существует в обертке файла каталога, когда этот объект добавляется, имя файла, присвоенное, поскольку ключ словаря может отличаться от предпочтительного имени файла.
При изменении предпочтительного имени файла реализация по умолчанию этого свойства заставляет существующие обертки файла родительского каталога удалять и повторно добавлять дочерний элемент для размещения изменения. Когда Вы пишете обертку файла в диск и затем позже инстанцируете другой обертки файла путем чтения файла из диска, предпочтительные имена файлов дочерних элементов не сохраняются. Если необходимо сохранить видимые пользователем имена присоединений, необходимо сохранить имена сами.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
fileAttributes fileAttributes
СвойствоСловарь атрибутов файла.
Объявление
Swift
var fileAttributes: [NSObject : AnyObject]
Objective C
@property(copy) NSDictionary *fileAttributes
Обсуждение
Словарь атрибутов файла является тем же форматом как возвращенный
attributesOfItemAtPath:error:
(NSFileManager
).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
regularFileContents regularFileContents
СвойствоСодержание узла файловой системы связалось с оберткой файла регулярного файла. (только для чтения)
Объявление
Swift
@NSCopying var regularFileContents: NSData? { get }
Objective C
@property(readonly, copy) NSData *regularFileContents
Обсуждение
Это свойство может содержать
nil
если пользователь изменяет файл после вызоваreadFromURL:options:error:
илиinitWithURL:options:error:
но преждеNSFileWrapper
считал содержание файла. ИспользуйтеNSFileWrapperReadingImmediate
чтение опции сократить вероятность той проблемы.Специальные замечания
Это свойство повышения
NSInternalInconsistencyException
если интерфейсный объект файла не является оберткой файла регулярного файла.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
writeToFile (_: atomically:updateFilenames:) - writeToFile:atomically:updateFilenames:
(OS X v10.10)Пишет файл содержание обертки в данный узел файловой системы.
Оператор осуждения
Использовать
writeToURL:options:originalContentsURL:error:
вместо этого.Объявление
Swift
func writeToFile(_
node
: String, atomicallyatomically
: Bool, updateFilenamesupdateNames
: Bool) -> BoolObjective C
- (BOOL)writeToFile:(NSString *)
node
atomically:(BOOL)atomically
updateFilenames:(BOOL)updateNames
Параметры
node
Путь узла файловой системы, в который записано содержание получателя.
atomically
YES
true
записать файл безопасно так, чтобы:Существующий файл не перезаписывается
Если файл не может быть записан полностью, метод перестал работать
NO
false
перезаписывать существующий файл и игнорировать неполные записи.updateNames
YES
true
обновить имена файлов получателя (его имя файла и — для оберток файла каталога — имена файлов его оберток субфайла) быть измененным на имена файлов соответствующих узлов в файловой системе, после успешной операции записи. Используйте это в операциях Save или Save As.NO
false
указать что имена файлов получателя не быть обновленным. Используйте это в операциях Save To.Возвращаемое значение
YES
true
когда операция записи успешна,NO
false
иначе.Специальные замечания
Начинаясь с OS X v10.6, предпочтительный метод обращения к файлам с a
file://
URL. Поэтому этот метод был осужден в пользуwriteToURL:options:originalContentsURL:error:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
Рекурсивно пишет все содержание обертки файла к данной файловой системе URL.
Объявление
Swift
func writeToURL(_
url
: NSURL, optionsoptions
: NSFileWrapperWritingOptions, originalContentsURLoriginalContentsURL
: NSURL?, erroroutError
: NSErrorPointer) -> BoolObjective C
- (BOOL)writeToURL:(NSURL *)
url
options:(NSFileWrapperWritingOptions)options
originalContentsURL:(NSURL *)originalContentsURL
error:(NSError **)outError
Параметры
url
URL узла файловой системы, в который записано содержание обертки файла.
options
Опция отмечает для записи в узел, расположенный в
url
. Посмотрите, что Обертка Файла Пишет Опции для возможных значений.originalContentsURL
Расположение предыдущей версии записанного содержания. Когда содержание не изменилось, реализация по умолчанию этого метода пытается избежать ненужного I/O путем записи жестких ссылок на регулярные файлы вместо того, чтобы фактически выписать их содержание. Дочерние обертки файла должны возвратить точные значения когда
filename
к свойству получают доступ для этого для работы. ИспользуйтеNSFileWrapperWritingWithNameUpdating
запись опции увеличить вероятность этого.Указать
nil
для этого параметра, если нет никакой более ранней версии содержания или если Вы хотите гарантировать, что все содержание записано в файлы.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему. ПередачаNULL
если Вы не хотите информации об ошибке.Возвращаемое значение
YES
true
когда операция записи успешна. Если не успешный, возвратыNO
false
после установкиoutError
кNSError
объект, описывающий причину, почему не могло быть записано содержание обертки файла.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
См. также
-
Чтение опций, которые могут быть установлены
initWithURL:options:error:
иreadFromURL:options:error:
методы.Объявление
Swift
struct NSFileWrapperReadingOptions : RawOptionSetType { init(_
rawValue
: UInt) init(rawValuerawValue
: UInt) static var Immediate: NSFileWrapperReadingOptions { get } static var WithoutMapping: NSFileWrapperReadingOptions { get } }Objective C
enum { NSFileWrapperReadingImmediate = 1 << 0, NSFileWrapperReadingWithoutMapping = 1 << 1, }; typedef NSUInteger NSFileWrapperReadingOptions;
Константы
-
Immediate
NSFileWrapperReadingImmediate
Если чтение с этой опцией успешно выполняется, то последующее использование
fileWrappers
,regularFileContents
,symbolicLinkDestinationURL
, иserializedRepresentation
отправленный в обертку файла и все ее дочерние обертки файла перестанет работать и возвратитсяnil
только если фактическая ошибка происходит (например, объем исчез, или файловый сервер недостижим) — не в результате пользователя, перемещающегося или удаляющего файлы.По причинам производительности,
NSFileWrapper
может не считать содержание некоторых пакетов файла сразу, даже когда выбрана эта опция. Например, потому что содержание пакетов (не все пакеты файла являются пакетами) является неизменным пользователю,NSFileWrapper
может считать дочерние элементы такого каталога лениво.Можно использовать эту опцию взять снимок файла или папки для записи позже. Например, приложение как TextEdit может использовать эту опцию при создании новых оберток файла для представления присоединений, которые пользователь создает путем копирования и вставки или перетаскивания от Средства поиска до документа TextEdit. Не используйте эту опцию при чтении пакета файла документа, потому что это вызвало бы излишне плохую производительность. Например, приложение не использовало бы эту опцию при создании оберток файла для представления присоединений, поскольку это открывает документ, хранивший в пакете файла.
Доступный в OS X v10.6 и позже.
-
WithoutMapping
NSFileWrapperReadingWithoutMapping
Запрещен ли файл, отображающийся для регулярных оберток файла.
Можно использовать эту опцию сохранить
NSFileWrapper
от отображающих память файлов. Это полезно, если Вы хотите удостовериться, что Ваше приложение не содержит открытые файлы (отображенные файлы являются открытыми файлами), поэтому препятствуя тому, чтобы пользователь извлек DVDs, размонтировав разделы диска, или размонтировав образы дисков. В OS X v10.6 и позже,NSFileWrapper
файлы карт распределения памяти, которые находятся на внутренних дисках только. Это никогда файлы карт распределения памяти на внешних дисках или сетевых томах, независимо от того, используется ли эта опция.Доступный в OS X v10.6 и позже.
Обсуждение
Можно использовать
NSFileWrapperReadingImmediate
иNSFileWrapperReadingWithoutMapping
при чтении опций вместе для взятия точного снимка иерархии файловой системы, которая безопасна от всех ошибок (включая тех упомянутых выше), как только успешно выполнилось чтение. Если чтение с обеими опциями успешно выполняется, то последующие вызовы методов, перечисленных в комментарии дляNSFileWrapperReadingImmediate
чтение опции к получателю и всем его порожденным оберткам файла никогда не перестанет работать. Однако обратите внимание на то, что чтение с обеими опциями вместе является дорогим и с точки зрения I/O и с точки зрения памяти для больших файлов или каталогов, содержащих большие файлы, или даже каталоги, содержащие много маленьких файлов.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
-
Запись опций, которые могут быть установлены
writeToURL:options:originalContentsURL:error:
метод.Объявление
Swift
struct NSFileWrapperWritingOptions : RawOptionSetType { init(_
rawValue
: UInt) init(rawValuerawValue
: UInt) static var Atomic: NSFileWrapperWritingOptions { get } static var WithNameUpdating: NSFileWrapperWritingOptions { get } }Objective C
enum { NSFileWrapperWritingAtomic = 1 << 0, NSFileWrapperWritingWithNameUpdating = 1 << 1, }; typedef NSUInteger NSFileWrapperWritingOptions;
Константы
-
Atomic
NSFileWrapperWritingAtomic
Делаются ли записи атомарно.
Можно использовать эту опцию гарантировать, что при перезаписи пакета файла перезапись или полностью успешно выполняется или полностью перестала работать без возможности отъезда пакета файла в противоречивом состоянии. Поскольку эта опция вызывает дополнительный I/O, Вы не должны использовать ее излишне. Например, не используйте эту опцию в переопределении
-[NSDocument
writeToURL:ofType:error:
]
, потому чтоNSDocument
безопасное сохранение уже сделано атомарно.Доступный в OS X v10.6 и позже.
-
WithNameUpdating
NSFileWrapperWritingWithNameUpdating
Ли порожденные обертки файла
filename
если запись успешно выполняется, свойства установлены.Когда Ваше приложение передает URL в, эта опция необходима
originalContentsURL
параметр кwriteToURL:options:originalContentsURL:error:
метод. Не используя эту опцию (и снова используя дочерние обертки файла должным образом), последующие вызовыwriteToURL:options:originalContentsURL:error:
не был бы в состоянии надежно создать жесткие ссылки в новом пакете файла, потому что запись имен в старом пакете файла устареет.Доступный в OS X v10.6 и позже.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-