IOS文件的管理

本文介绍了iOS应用中文件管理的相关知识,包括沙盒机制、NSString处理路径的方法、NSData的使用,以及文件的创建、读取、移动、复制、删除等操作。
摘要由CSDN通过智能技术生成

一、iOS中的沙盒机制

        IOS的文件路径不像android分为内置SD卡和内存,各自有分为缓存和file目录, iOS应用程序只能对自己创建的文件系统读取文件,这个独立、封闭、安全的空间,叫做沙盒。它一般存放着程序包文件(可执行文件)、图片、音频、视频、plist文件、sqlite数据库以及其他文件。
每个应用程序都有自己的独立的存储空间(沙盒), 一般来说应用程序之间是不可以互相访问

模拟器沙盒的位置

/User/userName/Library/Application Support/iPhone Simulator

当我们创建应用程序时,在每个沙盒中含有三个文件,分别是Document、Library和temp。

  1,  Document:一般需要持久的数据都放在此目录中,可以在当中添加子文件夹,iTunes备份和恢复的时候,会包括此目录。

 ,2,  Library:设置程序的默认设置和其他状态信息

,3,   temp:创建临时文件的目录,当iOS设备重启时,文件会被自动清除


获取沙盒目录

   1. 获取程序的根目录(home)目录

NSString *homePath = NSHomeDirectory()

 ,2.  获取Document目录

NSArray  *paths = NSSearchPathDorDirectoriesInDomains(NSDocumentDicrectory,, NSUserDomainMark, YES);                                                                        

  NSString *docPath = [paths lastObject];


 3.   获取Library目录

NSArray *paths = NSSearchPathForDirectoriseInDomains(NSLibraryDirectory, NSUserDomainMask, YES);                                                                                 

NSString *docPath = [paths lastObject];   


 4.   获取Library中的Cache

NSArray *paths = NSSearchPathForDirectoriseInDomains(NSCachesDirectory, NSUserDomainMask, YES);                                                                               

   NSString *docPath = [paths lastObject];


  5.  获取temp路径

NSString *temp = NSTemporaryDirectory( );


二、NSString类路径的处理方法


文件路径的处理

NSString *path = @"/Uesrs/apple/testfile.txt"

    常用方法如下

获得组成此路径的各个组成部分,结果:("/","User","apple","testfile.txt")

- (NSArray *)pathComponents;

提取路径的最后一个组成部分,结果:testfile.txt

- (NSString *)lastPathComponent;

删除路径的最后一个组成部分,结果:/Users/apple

- (NSString *)stringByDeletingLastPathCpmponent;

将path添加到先邮路径的末尾,结果:/Users/apple/testfile.txt/app.txt

- (NSString *)stringByAppendingPathConmponent:(NSString *)str;

去路径最后部分的扩展名,结果:text

- (NSString *)pathExtension;

删除路径
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值