NSFileManager类方法整理

来源:互联网 发布:哪里有淘宝买家数据 编辑:程序博客网 时间:2024/05/22 19:57

 

//******************创建了一个文件管理器单例对象*************************

NSFileManager *fileManager = [NSFileManager defaultManager];

NSFileManager *fileManager2 = [NSFileManager defaultManager];

NSLog(@"%p",fileManager);

NSLog(@"%p",fileManager2);

        

//*************************遍历目录内容****************************

NSString *path = @"/Users/qianfeng/";

NSError *error = nil;

//第一个参数查文件路径:相对路劲或绝对路径

//如果操作失败,这个方法会在内部创建一个error对象

NSArray *files = [fileManager contentsOfDirectoryAtPath:path error:&error];

if (error) {

   NSLog(@"文件不存在");

   NSLog(@"%@",error);

}else{

//遍历当前传递目录里所有文件

   for (id obj in files) {

        NSLog(@"%@",obj);

     }

}


//*************************深度遍历****************************

error = nil;

NSArray *subFile = [fileManager subpathsOfDirectoryAtPath:path error:&error];

if (error) {

   NSLog(@"文件不存在");

}else{

   for (id obj in subFile) {

       NSLog(@"%@",subFile);

   }

}



//***************************创建目录*********************

//createDirectoryAtPath:路径

//withIntermediateDirectories:是否自动创建不存在的目录

//attributes:文件属性

//error:出错处理

BOOL isExist = [fileManager fileExistsAtPath:@"/Users/qianfeng/Desktop/d5"];

if (isExist) {

NSLog(@"目录已经存在");

}else{

BOOL ret = [fileManager createDirectoryAtPath:@"/Users/qianfeng/Desktop/d5/zhang/qianfeng withIntermediateDirectories:YESattributes:nil error:nil];

if (ret) {

  NSLog(@"目录创建成功");

}else{

  NSLog(@"目录创建失败");

}

}


//**************获得文件属性**********************

//创建字典类型对象接收文件属性

NSDictionary *fileDic = [fileManager attributesOfItemAtPath:@"/Users/qianfeng/Desktop/d5" error:nil];

NSLog(@"%@",fileDic);


//获取文件扩展名

[obj pathExtension]




//******************打印文件大小****************


NSLog(@"%@",[fileDic objectForKey:NSFileSize]);

//:

NSLog(@"%llu",[fileDic fileSize]);

        

        


//*******************创建文件******************

//createFileAtPath:文件路径

//contents:文件内容

//attributes:文件属性

BOOL isExist = [fileManager fileExistsAtPath:@"/Users/qianfeng/Desktop/d5/haha.hah"];

if (isExist) {

    NSLog(@"文件已存在");

}else{

BOOL ret1 = [fileManager createFileAtPath:@"/Users/qianfeng/Desktop/d5/haha.hah" contents:nil attributes:nil];

    if (ret1) {

        NSLog(@"文件创建成功");

    }else{

        NSLog(@"文件创建失败");

    }

}


//*****************获取目录下所有文件的信息**************

NSFileManager *fm = [NSFileManager defaultManager];

NSArray *fileArray = [fm contentsOfDirectoryAtPath:@"/Users/qianfeng/Desktop" error:nil];

for (NSString *obj in fileArray) {

   BOOL ret = [obj hasSuffix:@".txt"];

   if (ret) {

        NSLog(@"%@",obj);

   }

    NSLog(@"%@",[obj pathExtension]); //获取文件扩展名

}

        

        

        

//************************文件拷贝************************

//copyItemAtPath:源文件路径

//toPath:目的路径

NSError *error = nil;

[fm copyItemAtPath:@"/Users/qianfeng/Desktop/111.txt" toPath:@"/Users/qianfeng/Desktop/d5/111.txt" error:&error];

if (error) {

  NSLog(@"文件已存在");

}else{

  NSLog(@"拷贝成功");

}

        

        

        

        

//**************************文件移动及重命名**************************

//moveItemAtPath:移动的源文件

//toPath:移动的目标文件

//error:错误处理

BOOL ret2 = [fm moveItemAtPath:@"/Users/qianfeng/Desktop/111.txt” toPath:@"/Users/qianfeng/Desktop/d5/112.txt" error:nil];

if (ret2) {

NSLog(@"文件移动成功");

}else{

NSLog(@"文件移动失败");

}

        

        

        

//*****************************文件删除***************************************

//慎用!!!不会删除到废纸篓

bool ret2 = [fm removeItemAtPath:@"/Users/qianfeng/Desktop/d5/112.txt" error:nil];

if (ret2) {

   NSLog(@"文件删除成功");

}else{

   NSLog(@"文件删除失败);

}


0 0