Instance Method

fileAttributesToWrite(to:for:)

Returns a dictionary of file attributes to associate with the document file when writing or updating it.

Declaration

func fileAttributesToWrite(to url: URL, for saveOperation: UIDocumentSaveOperation) throws -> [AnyHashable : Any]

Parameters

url

A file URL locating the document in the application sandbox.

saveOperation

A constant that indicates whether the document file is being written the first time or whether it is being overwritten. See UIDocumentSaveOperation for details.

outError

If you override this method and cannot write the document data for any reason, return by indirection an NSError object that encapsulates the reasons why you can’t. Otherwise, ignore this parameter.

Return Value

A dictionary of file attributes—for example, level of file protection and creation date. See FileManager for more information about file attributes.

Discussion

The attributes are associated with a specific file type and save operation. You can override this method to return a dictionary of file attributes that are different than the default file attribute, which for new files is extensionHidden.

The save(to:for:completionHandler:) calls this method before executing asynchronous writing. It passes the dictionary into writeContents(_:andAttributes:safelyTo:for:) when it calls that method to write the document file.

See Also

Writing Document Data

func close(completionHandler: ((Bool) -> Void)? = nil)

Asynchronously closes the document after saving any changes.

func contents(forType: String)

Override this method to return the document data to be saved.

func save(to: URL, for: UIDocumentSaveOperation, completionHandler: ((Bool) -> Void)? = nil)

Saves document data to the specified location in the application sandbox.

func writeContents(Any, andAttributes: [AnyHashable : Any]? = nil, safelyTo: URL, for: UIDocumentSaveOperation)

Ensures that document data is written safely to a specified location in the application sandbox.

func writeContents(Any, to: URL, for: UIDocumentSaveOperation, originalContentsURL: URL?)

Writes the document data to disk at the sandbox location indicated by a file URL.

var savingFileType: String?

Returns the file type to use for saving a document.

func fileNameExtension(forType: String?, saveOperation: UIDocumentSaveOperation)

Returns a file extension to append to the file URL of the document file being written.