您的位置:首页 > 移动开发 > IOS开发

iOS文件目录

2016-03-01 12:05 204 查看
沙盒模型有四个文件夹
1,Documents目录:所有应用程序数据文件写入这个目录。这个目录用于存储用户数据或其它应该定期备份的信息。
2,AppName.app目录:这是应用程序的程序包目录,包含应用程序本身。由于应用程序必须经过签名,所以在运行时不能对这个目录的内容进行修改,否则可能会使应用程序无法启动。
3,Library目录
两个子目录
①,Library/preferences:包含应用程序的偏好设置文件。不应该直接创建偏好设置文件,而是应该使用NSUserDefaults类,来取得和设置应用程序的偏好
②,Library/Caches目录:用于存放程序专用的支持文件,保存应用应用程序再次启动过程需要信息
4,tmp目录:这个目录用于存放临时文件,保存应用程序再次启动过程不需要信息

//获取目录路径
//获取家路径
NSString *homeDir =
NSHomeDirectory();
NSLog(@"homeDir---%@",homeDir);
homeDir---/Users/yangjunfei/Library/Developer/CoreSimulator/Devices/9315C7B7-E2A2-4222-A017-36A3FF45BCFE/data/Containers/Data/Application/7E8E5168-77D5-4636-977C-BDCA0E6268A3

//Documents目录
NSArray *paths =
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
NSString *documentsDir = [paths
objectAtIndex:0];
NSLog(@"documentsDir---%@",documentsDir);
documentsDir---/Users/yangjunfei/Library/Developer/CoreSimulator/Devices/9315C7B7-E2A2-4222-A017-36A3FF45BCFE/data/Containers/Data/Application/7E8E5168-77D5-4636-977C-BDCA0E6268A3/Documents
//Library/Caches目录
NSArray *cachesPaths =
NSSearchPathForDirectoriesInDomains(NSCachesDirectory,
NSUserDomainMask, YES);
NSString *cachesDir = [cachesPaths
objectAtIndex:0];
NSLog(@"cachesDir---%@",cachesDir);
cachesDir---/Users/yangjunfei/Library/Developer/CoreSimulator/Devices/9315C7B7-E2A2-4222-A017-36A3FF45BCFE/data/Containers/Data/Application/7E8E5168-77D5-4636-977C-BDCA0E6268A3/Library/Caches

//tmp目录
NSString *tmpDir =
NSTemporaryDirectory();
NSLog(@"tmpDir---%@",tmpDir);

/Users/yangjunfei/Library/Developer/CoreSimulator/Devices/9315C7B7-E2A2-4222-A017-36A3FF45BCFE/data/Containers/Data/Application/7E8E5168-77D5-4636-977C-BDCA0E6268A3/tmp/

/**
NSUserDefaults

NSUserDefaults 适合存储轻量级的本地数据,比如要保存一个登陆界面的数据,用户名、密码之类的,个人觉得使用 NSUserDefaults
是首选。下次再登陆的时候就可以直接从 NSUserDefaults
里面读取上次登陆的信息咯。

因为如果使用自己建立的 plist
文件什么的,还得自己显示创建文件,读取文件,很麻烦,而是用 NSUserDefaults
则不用管这些东西,就像读字符串一样,直接读取就可以了。

NSUserDefaults 支持的数据格式有:NSNumber(Integer、Float、Double),NSString,NSDate,NSArray,NSDictionary,BOOL
类型。 NSUserDefaults 很方便,读取也很容易。

*/
[self
saveNSUserDefaults];
[self
readNSUserDefaults];

//保存数据到 NSUserDefaults
- (void)saveNSUserDefaults
{
NSUserDefaults *userDefaults = [NSUserDefaults
standardUserDefaults];
[userDefaults setObject:@"123"
forKey:@"num"];
[userDefaults synchronize];
}

//从 NSUserDefaults
中读取数据
- (void)readNSUserDefaults
{
NSUserDefaults *userDefaults = [NSUserDefaults
standardUserDefaults];
//读取整数int类型的数据
NSString *num = [userDefaults
objectForKey:@"num"];
NSLog(@"num---%@",num);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: