标签:
#import <Foundation/Foundation.h> //宏定义一个文件夹的路径信息 #define path @"/Users/XXX/Desktop/Snail" //宏定义一个文件的路径 #define filePath @"/Users/XXX/Desktop/Snail/Snail3/Snail.txt" int main(int argc, const char * argv[]) { @autoreleasepool { //-----------------------------遍历文件夹----------------------------- //文件管理器,是单例模式 NSFileManager * manager = [NSFileManager defaultManager]; /* 浅层遍历 参数: 第一个参数:文件夹路径 第二个参数:返回的报错信息 */ //定义报错信息 NSError * error = nil; //返回值是字符串数组 浅层遍历 都是打开第一层文件的路径信息 错误信息要加取地址符号 NSArray * array = [manager contentsOfDirectoryAtPath:path error:&error]; if (error) { //出错的话 就打印出出错信息来 NSLog(@"%@",error); }else{ NSLog(@"%@",array); } //深层遍历 即把文件夹里面所有的文件路径信息打印出来 NSArray * array2 = [manager subpathsOfDirectoryAtPath:path error:&error]; NSLog(@"%@",array2); //---------------------------------创建文件--------------------------- //判断文件是否存在 返回BOOL BOOL ret = [manager fileExistsAtPath:filePath]; if (ret) { NSLog(@"文件存在"); }else{ /* 创建文件 返回值也为BOOL。如果文件已经存在了,再创建就会覆盖点同名的文件 第一个参数:文件路径 第二个参数:文件内容 第三个参数:文件属性及权限 */ BOOL ret2 = [manager createFileAtPath:filePath contents:nil attributes:nil]; if (ret2) { NSLog(@"创建成功"); }else{ NSLog(@"创建失败"); } } //-------------------------------查看文件属性及权限-------------------------- //返回值是一个字典 NSDictionary * dict = [manager attributesOfItemAtPath:filePath error:nil]; /* NSFileCreationDate = "2015-07-27 12:32:44 +0000"; NSFileExtensionHidden = 0; NSFileGroupOwnerAccountID = 20; NSFileGroupOwnerAccountName = staff; NSFileHFSCreatorCode = 0; NSFileHFSTypeCode = 0; NSFileModificationDate = "2015-07-27 12:32:44 +0000"; NSFileOwnerAccountID = 502; NSFileOwnerAccountName = student; NSFilePosixPermissions = 420; NSFileReferenceCount = 1; NSFileSize = 0; NSFileSystemFileNumber = 1413025; NSFileSystemNumber = 16777218; NSFileType = NSFileTypeRegular; */ NSLog(@"%@",dict); //取得文件的大小 NSLog(@"%@",[dict objectForKey:@"NSFileSize"]); //--------------------------字符串与二进制NSData的转换------------------------- //参数均为编码格式 NSString * string = @"wujian"; //将字符串转换为OC的二进制形式 NSData * data = [string dataUsingEncoding:NSUTF8StringEncoding]; //将二进制数据转换为字符串 NSString * str = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]; //-------------------------------文件的常用操作-------------------------------- NSString * filePath1 = @"/Users/XXX/Desktop/Snail/Snail1/Snail.txt"; NSString * filePath2 = @"/Users/XXX/Desktop/Snail/Snail3/Snail.txt"; //文件的copy,即复制 如果此toPath参数的文件已经存在 则copy失败 BOOL ret5 = [manager copyItemAtPath:filePath1 toPath:filePath2 error:nil]; if (ret5) { NSLog(@"复制成功"); }else{ NSLog(@"复制失败"); } //文件的移动 如果toPath中得文件已经存在 则移动失败 BOOL ret6 = [manager moveItemAtPath:filePath1 toPath:filePath2 error:nil]; if (ret6) { NSLog(@"移动成功"); }else{ NSLog(@"移动失败"); } //文件的重命名 即移动文件 并且移动后的名字要改变 即移动文件 //删除文件 不会经过废纸篓 直接删除 文件存在则删除成功,否则删除失败. BOOL ret4 = [manager removeItemAtPath:filePath2 error:nil]; if (ret4) { NSLog(@"删除成功"); }else{ NSLog(@"删除失败"); } NSString * path11 = @"/Users/XXX/Desktop/Snail/Snail3"; //创建文件夹 目标文件夹存在 则创建失败 [manager createDirectoryAtPath:path11 withIntermediateDirectories:YES attributes:nil error:nil]; } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/qq1791422018/article/details/47090803