您的位置:首页 > 其它

NSFileManager的用法深入(二)

2016-01-01 01:14 288 查看
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
@autoreleasepool {
// 1: 创建目录
NSFileManager * fm = [NSFileManager defaultManager];
NSString * path = @"/Users/stone/Desktop/bbb/aaa";

// 参数 : withIntermediateDirectories 中间的目录
// 例如: "/Users/stone/Desktop/aaa/bbb" 如果是YES 创建bbb之前判断 有没有 aaa目录 , 没有就创建,
// 如果是 NO , 就不创建 , 并且 返回 BOOL值 是 0;
// 参数 : attributes 您可以设置所有者和组编号、 文件权限和修改日期
BOOL isSuccess = [fm createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
if (isSuccess) {
NSLog(@"success");
}
else {
NSLog(@"failed");
}

// 2: 创建文件
NSString * str = @"hello world!";
NSData * data = [str dataUsingEncoding:NSUTF8StringEncoding];
isSuccess = [fm createFileAtPath:[path stringByAppendingPathComponent:@"file.txt"] contents:data attributes:nil];
if (isSuccess) {
NSLog(@"success");
}
else {
NSLog(@"failed");
}

// 3: copy文件
NSString * targetPath = @"/Users/stone/Desktop/ccc";
if (![fm fileExistsAtPath:targetPath]) {
[fm createDirectoryAtPath:targetPath withIntermediateDirectories:YES attributes:nil error:nil];
}
[fm copyItemAtPath:[path stringByAppendingPathComponent:@"file.txt"] toPath:[targetPath stringByAppendingPathComponent:@"file_copy.txt"] error:nil];

// 4: 移动文件
// 移动中 可以改文件名, 移动的只是 content
[fm moveItemAtPath:[targetPath stringByAppendingPathComponent:@"file_copy.txt"] toPath:@"/Users/stone/Desktop/aaa.txt" error:nil];

// 5: 删除文件, 能删除目录 也能删除文件...目录文件也能同时删除...
[fm removeItemAtPath:targetPath error:nil];
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: