转载地址: http://blog.csdn.net/xyz_lmn/article/details/8968213
#pragma mark 获取应用沙盒根路径
- (void)dirHome{
NSString *path = NSHomeDirectory();
NSLog(@"app_home:---%@",path);
}
#pragma mark 获取Document路径,苹果建议将程序创建产生的文件以及应用浏览产生的文件数据保存在该目录下,iTunes备份和恢复的时候会包括此目录。
- (NSString *)dirDoc{
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *path = [array lastObject];
NSLog(@"document --->%@",path);
return path;
}
#pragma mark 获取Library 存储程序的默认设置或其它状态信息;
- (NSString *)dirLib{
NSArray *array = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES)
;
NSString *path = [array lastObject];
NSLog(@"library----->%@",path);
return path;
}
#pragma mark 获取cach目录 存放缓存文件,保存应用的持久化数据,用于应用升级或者应用关闭后的数据保存,不会被itunes同步,所以为了减少同步的时间,可以考虑将一些比较大的文件而又不需要备份的文件放到这个目录下。
- (NSString *)dirCach{
NSArray *array = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *path = [array lastObject];
NSLog(@"cach-------->%@",path);
return path;
}
#pragma mark tmp 提供一个即时创建临时文件的地方,但不需要持久化,在应用关闭后,该目录下的数据将删除,也可能系统在程序不运行的时候清除。
- (NSString *)dirTmp{
NSString *tmp = NSTemporaryDirectory();
NSLog(@"tmp----->%@",tmp);
return tmp;
}
#pragma mark 创建文件夹
- (BOOL)createDirectory{
NSString *path = [self dirDoc];
NSFileManager *fileManager = [NSFileManager defaultManager];
path = [path stringByAppendingPathComponent:@"maizi_data"];
bool flag = [fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
if (flag) {
NSLog(@"创建成功");
}else{
NSLog(@"创建失败");
}
return flag;
}
#pragma mark 创建文件
- (BOOL)createFile{
NSString *path = [self dirDoc];
NSFileManager *fileManager = [NSFileManager defaultManager];
path = [path stringByAppendingPathComponent:@"NBA"];
bool flag = [fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
if (flag) {
path = [path stringByAppendingPathComponent:@"player.txt"];
flag = [fileManager createFileAtPath:path contents:nil attributes:nil];
if (flag) {
NSLog(@"文件创建成功");
}else{
NSLog(@"文件创建失败");
}
}
return flag;
}
#pragma mark writeFile
- (BOOL)writeFile{
NSString *path = [self dirDoc];
path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL flag = [fileManager fileExistsAtPath:path];
if (flag) {
NSLog(@"文件已经存在");
NSString *content = @"季前赛又快来了";
NSError *error = nil;
flag = [content writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&error];
if (flag) {
NSLog(@"写入成功");
}else{
NSLog(@"写入失败----%@",error);
}
}else{
NSLog(@"文件不存在");
}
return flag;
}
#pragma mark 读数据
- (BOOL)readFile{
NSString *path = [self dirDoc];
path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
NSString *content = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
if (content) {
NSLog(@"文件内容---->%@",content);
return true;
}else{
return false;
}
}
#pragma mark 文件属性
- (void)fileAttr{
NSString *path = [self dirDoc];
path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
NSFileManager *fileManager = [NSFileManager defaultManager];
NSDictionary *dic = [fileManager attributesOfItemAtPath:path error:nil];
NSArray *array = [dic allKeys];
id val;
for (int i = 0; i<array.count; i++) {
val = [dic objectForKey:array[i]];
NSLog(@"key---%@----val---%@",array[i],val);
}
}
#pragma mark 删除
- (BOOL)removeFile{
NSString *path = [self dirDoc];
path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
NSFileManager *fileManager = [NSFileManager defaultManager];
bool flag = [fileManager removeItemAtPath:path error:nil];
if (flag) {
NSLog(@"删除成功");
}else{
NSLog(@"删除失败");
}
return flag;
}