NSFileManager

NSFileManager
NSFileManager
使您能够执多通用文件系操作并隔离用程序与底文件系。大多数文件操作可以行使用共享文件管理器象。在 iOS Mac OS X v10.5 之后,可以建一个独特的NSFileManager 种情况下,您想要使用一个委托象的文件管理器。
Cocoa 用程序中,一个文件管理器象通常是第一个与文件系的交互。你用象来定位,建、复制和移文件和目。你也用象来得到有关文件和目的信息,比如尺寸,修改日期,BSD 可。您可以使用一个文件管理器象改变许多文件和目的属性的NSFileManager 支持 NSURL NSString 方法指定文件或目的位置。使用的指定文件系一般采用 NSURL 物品,可以转换路径信息更有效的内部表示。你也可以得一个书签NSURL ,似于一个名和提供了一个更确定的方式定位文件或目。如果你是移、复制、接或除文件或目,您可以使用一个委托与文件管理器象来管理些操作。代表的职责是确操作和错误发决定是否继续。在 Mac OS Xv10.7后来,代表必符合NSFileManagerDelegate协议。在iOS 5.0,后来在Mac OS Xv10.7 后来,NSFileManager 包括方法来管理目存在云。云存的文件和目录标记同步到 iCloud,这样就可以提供iOS 设备Macintosh 电脑。改一个目在一个位置播到其他地点,确保所有物品保持同步。
线程考共享
NSFileManager 象的方法可以从多个线用安全。然而,如果您使用一个委托接收通知的状,复制,除和接操作,应该创建一个独特的文件管理器的,该对象分配你的委托,并使用文件管理器启您的操作。

建一个文件管理器
——init(641 )
返回一个 NSFileManager 初始化例。
+ defaultManager(609 )
返回程的共享文件管理器象。
定位系

- URLForDirectory:inDomain:appropriateForURL:create:error:(663)定位和

择创建指定的域中常用的目
函数原型:
-(NSURL*)URLForDirectory:(NSSearchPathDirectory)directoryinDomain:(NSSearchPathDomainMask)domain appropriateForURL:(NSURL *)urlcreate:(BOOL)shouldCreate error:(NSError **)error

参数
directory :搜索路径目。描述的支持NSSearchPathDirectory(2270 )Domain:搜索的文件系个参数的是常数描述 NSSearchPathDomainMask(2273)。你应该为你的搜索指定只有一个域,你可能不会为这个参数指定NSAllDomainsMask 常数。
url :目里面的您希望建一个独特的临时中自保存文档或其他使用的名字。个参数被忽略,除非目参数包含 NSItemReplacementDirectory 和域参数的包含NSUserDomainMask。当建一个临时,shouldCreate 参数被忽略和目录总建的。
shouldCreate 指定 YES 如果你想要建的目,如果它不存在。Error:一个错误对象的指。如果出现错误,此指针设一个实际错误对象包含错误信息。你为这个参数可以指定,如果你不希望错误信息。
Return Value:求目录的 NSURL 或零如果错误
Discussion您通常使用种方法来定位一个准的系,如文档、用程序支持或存目。您可以使用个方法来建一个新的临时用于存储诸如自保存文件;,指定目参数,NSItemReplacementDirectory NSUserDomainMask 域参数,有效的父目url 参数。定位()所需的目,方法将返回URL。如果不止一个适当的目存在于指定的域,种方法只返回第一个找到。里面的名字,您希望建一个独特的临时中自保存文档或其他使用。个参数被忽略,除非目参数包含 NSItemReplacementDirectory 和域参数的包含NSUserDomainMask 。当建一个临时,shouldCreate 参数被忽略和建的目。通和域毫无意( 例如 NSDesktopDirectory NSNetworkDomainMask)提出了一个例外。
NSSearchPathDirectory

These constants specify the location of a variety of directories.enum { NSApplicationDirectory = 1,

NSDemoApplicationDirectory,NSDeveloperApplicationDirectory,NSAdminApplicationDirectory,

NSLibraryDirectory,NSDeveloperDirectory,

NSUserDirectory,NSDocumentationDirectory,

NSDocumentDirectory,NSCoreServiceDirectory,NSAutosavedInformationDirectory = 11,

NSDesktopDirectory = 12,NSCachesDirectory = 13,

NSApplicationSupportDirectory = 14,NSDownloadsDirectory = 15,

NSInputMethodsDirectory = 16,NSMoviesDirectory = 17,

NSMusicDirectory = 18,NSPicturesDirectory = 19,NSPrinterDescriptionDirectory = 20,

NSSharedPublicDirectory = 21,NSPreferencePanesDirectory = 22,

NSItemReplacementDirectory = 99,

NSAllApplicationsDirectory = 100,NSAllLibrariesDirectory = 101

}; typedef NSUInteger NSSearchPathDirectory;Constants

NSApplicationDirectory 支持用程序(用程序)。在 iOS 2.0 和以后。NSDemoApplicationDirectory 不支持的用程序和演示版本。在 iOS 2.0 和以后。

NSDeveloperApplicationDirectory 用程序 (/ / 用程序 ) NSAdminApplicationDirectory 和网管理用程序。
NSLibraryDirectory 各种用的文档、支持和配置文件(/)NSDeveloperDirectory员资(/)。弃用:Xcode 3.0 开始,工具可以安装在任何位置。在iOS 2.0 和以后。

NSUserDirectory 家目(/)
NSDocumentationDirectory 文档。
NSDocumentDirectory 文档目
NSCoreServiceDirectory 核心服的位置(/图书馆/ CoreServices)NSAutosavedInformationDirectory 的自保存的文档/保存的位置信息在iOS 4.0 和以后。

NSDesktopDirectory 的桌面目的位置。
NSCachesDirectory 弃的存文件的位置 ( 图书馆 / ) NSApplicationSupportDirectory 用程序支持文件的位置(图书馆/用程序支持)NSDownloadsDirectory 的下的位置。NSDownloadsDirectory flags 只会生一个路径只有当 NSUserDomainMask 提供。
NSInputMethodsDirectory 入方法(图书馆/入方法)位置
NSMoviesDirectory 影目(~ /)位置
NSMusicDirectory 影目(~ /)位置
NSPicturesDirectory 影目(~ /)位置
NSPrinterDescriptionDirectory 位置系PPDs (图书馆/打印机/ PPDs)位置NSSharedPublicDirectory 的公共共享目的位置(~ /公众)NSPreferencePanesDirectory PreferencePanes 的 位 置 使 用 系 统 设 ( 图 书 馆 /PreferencePanes)
NSItemReplacementDirectory
NSFileManager
URLForDirectory:inDomain:appropriateForURL:creat:error 方法使用
NSAllApplicationsDirectory 用程序可以生的所有目
NSAllLibrariesDirectory 源可以生的所有目
NSSearchPathDomainMask

Search path domain constants specifying base locations for the NSSearchPathDirectory (page 2270)type.
Constants
enum { NSUserDomainMask = 1,

NSLocalDomainMask = 2,NSNetworkDomainMask = 4,

NSSystemDomainMask = 8,

NSAllDomainsMask = 0x0ffff,
}; typedef NSUInteger NSSearchPathDomainMask;
NSUserDomainMask 的主目录——安装用的个人物品 (~) 位置。NSLocalDomainMask 当前的机器——台机器上的安装的为每一个人提供服务的项目的地方
NSNetworkDomainMask 在当地网络环境中公开可用的地方——安装网中可用的物品(/)位置。
NSSystemDomainMask Apple 提供的不能提供的修改(/)
NSAllDomainsMask 所有域。包括所有上面的和未来的目。
- URLsForDirectory:inDomains(666 ):返回一个数指定的公共目url 求的域。

Discovering Directory Contents 发现内容
- contentsOfDirectoryAtURL:includingPropertiesForKeys:options:error: (616 )- 行一个浅搜索指定的目,并返回 url 所包含的目。
- - contentsOfDirectoryAtPath:error: (615 )
- 行一个浅搜索指定的目并返回包含目的路径。
- enumeratorAtURL:includingPropertiesForKeys:options:errorHandler:(632 )
- 返回目,可以用来行深枚指定目URL

- enumeratorAtPath:(630 )返回目,可以用来行深枚指定目的路径。
- mountedVolumeURLsIncludingResourceValuesForKeys:options:(648)url返回一个数组标识安装卷算机上可用。

- subpathsOfDirectoryAtPath:error:(662 )行深枚指定的目,返回所有包含的子目的路径。

- subpathsAtPath:(661 )返回一个字符串数组标识指定目中的所有目的路径。Creating and Deleting Items
- createDirectoryAtURL:withIntermediateDirectories:attributes:error:(622 )
- 在指定的 URL 上依据提供的属性建一个目

- createDirectoryAtPath:withIntermediateDirectories:attributes:error:(621 )- 在指定的路径上依据提供的属性建一个目
- createFileAtPath:attributes:error:(623 )
- 建了一个文件,定的位置和指定的属性。
- removeItemAtURL:error:(653 )
- 除文件或目录在指定 URL

- removeItemAtPath:错误:(652 )
除指定的文件或目录在指定的路径。-replaceItemAtURL:withItemAtURL:backupItemName:options:resultingItemURL:error(654 )
以确保不生数据失方式,在指定的 URL 替代 Item 的内容的。

Moving and Copying Items

- copyItemAtURL:toURL:error:(618 )
- 同步的复制指定 URL 的文件到一个新的位置。
- copyItemAtPath:toPath:error:(617 )
- 同步的复制指定路径的 Item 到一个新的位置。
- moveItemAtURL:toURL:error:(650 )同步的移指定 URL 的文件或目到一个新的位置。

- moveItemAtPath:toPath:error:(649 )同步的移指定路径的文件或目到一个新的位置。Managing ICloud-Based Items
- setUbiquitous:itemAtURL:destinationURL:error:(657 )是否在指定的 URL 应该在云中。
- startDownloadingUbiquitousItemAtURL:error:(659 )开始下(如果需要)到本地系指定的
- isUbiquitousItemAtURL:(645 )

- 返回一个布指示是否针对iCloud
- URLForUbiquityContainerIdentifier:(665 )
- 返回与指定的容器相关iCloud ID
- URLForPublishingUbiquitousItemAtURL:expirationDate:error:(664 )
- 返回一个 URL,可以发电户让基于云的条目的副本。- evictUbiquitousItemAtURL:error:(635 )

- 除指定的云目的本地副本。
- Creating Symbolic and Hard Links 建符号和硬
- createSymbolicLinkAtURL:withDestinationURL:error:(626 )
- 建一个符号接指定 URL 指向一个目在定的 URL
- createSymbolicLinkAtPath:withDestinationPath:error:(625 )
- 建一个符号接指向指定的目的地。
- - linkItemAtURL:toURL:error:(647 )
- 建了一个硬接之的物品在指定的 url
- linkItemAtPath:toPath:error:(646 )
- 建了一个硬接之的物品在指定的路径。
- destinationOfSymbolicLinkAtPath:error:(628 )
- 返回的路径指向的符号接。
- Determining Access to Files
- fileExistsAtPath:(637 )
- 返回一个布尔值,用于示在一个指定路径上文件或目是否存。
- fileExistsAtPath:isDirectory:(638 )
- 返回一个布尔值,用于示在一个指定路径上文件或目是否存。
- isReadableFileAtPath:(644 )返回一个布尔值,用于象似乎能够读取指定文件。
- isWritableFileAtPath:(646 )返回一个布尔值,用于象在一个指定的文件中似乎能够编写。- isExecutableFileAtPath:(643 )返回一个布尔值,用于示操作系统在一个指定的文件中似乎能够执行。- isDeletableFileAtPath:(642 )

返回一个布尔值,用于象似乎能够删除指定的文件。Getting and Setting Attributes 取和置属性
- componentsToDisplayForPath:(613 )返回一个字符串数代表一个定的用件的路径。- displayNameAtPath:(629 )返回示文件或目的名称在指定的路径。

- attributesOfItemAtPath:error:(610 )
返回物品的属性在定的路径。
- attributesOfFileSystemForPath:error:(609 )返回一个描述的属性字典安装文件系定的路径所在。
- setAttributes:ofItemAtPath:error:(656 )
指定的文件或目的属性集。
Getting and Comparing File Contents 取和比文件内容
- contentsAtPath:(614 )
- 返回文件的内容在指定的路径。返回值为 NSSata*
- contentsEqualAtPath:andPath:(614 )返回一个布尔值,用于示指定路径的文件或目是否有相同的内容。Converting File Paths to Strings 将文件路径转换为字符串
- fileSystemRepresentationWithPath:(641 )
返回一个 char*表示定路径的正确编码 Unicode 字符串使用的文件系- stringWithFileSystemRepresentation:length:(660 )
- 返回一个 NSString 象的内容来自指定 char*。
- Managing the Delegate
- – setDelegate: (page 657)

Sets the delegate for the receiver.- – delegate (page 627)

Returns the delegate for the receiver.
- Managing the Current Directory 管理当前目- changeCurrentDirectoryPath:(611 )
- 当前工作目的路径到指定的路径

- currentDirectoryPath(627 )返回程序的当前目的路径。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值