NSFileManager

目录
    1.1 创建文件
    1.2 获取文件大小
    1.3 APP安装情况
    1.4 文件的复制和移动
    1.5 文件中内容有多少行
    1.6 文件内容的读写操作
 1.1 创建文件
    
    NSFileManager *fm=[NSFileManager defaultManager];
    
    //1、创建文件,一般来说先要判断文件是否存在
    
    // Users/student/Desktop是文件11.txt路径
    
    BOOL ifExist=[fm fileExistsAtPath:@"/Users/didi/Desktop/14.txt"];
    
    //当BOOL为NO的时候,我们创建一个新的文件
    
    if(ifExist == NO)
    {
        
        //第一参数就是想创建文件的路径,路径里面要包括即将要创建的文件的名字和扩展名
        
        BOOL ifCreateSuccess=[fm createFileAtPath:@"/Users/didi/Desktop/14.txt" contents:nil attributes:nil];
        
        if(ifCreateSuccess == YES)
        {
            NSLog(@"成功");
        }
        else
        {
            NSLog(@"失败");
        }
        
    }
1.2 获取文件大小

    NSDictionary *fileDic=[fm attributesOfItemAtPath:@"/Users/didi/Desktop/14.txt" error:nil];

    long long size=[fileDic fileSize];

1.3 查看系统安装了哪些APP
    
    NSFileManager *fm = [NSFileManager defaultManager];
    
    NSError *error=nil;
    
    //浅层遍历,只遍历我们给定的路径这个文件夹的根目录
    
    NSArray *shallowArr=[fm contentsOfDirectoryAtPath:@"/Applications" error:&error];
    
    if(error)
    {
        NSLog(@"%@",error);
    }
    else
    {
        NSLog(@"%@",shallowArr);
        for(NSString *fileName in shallowArr)
        {
            
            if([fileName hasSuffix:@".app"])
            {
                NSLog(@"%@",fileName);
            }
            
        }
    }

1.4 文件的复制和移动
    
    NSFileManager *fm = [NSFileManager defaultManager];
    
    NSError *error=nil;
    
    //文件路径
    
    NSString *filePath=[NSString stringWithFormat:@"/Users/didi/Desktop/123/456/%@",@"14.txt"];
    
    //文件目的路径
    
    NSString *toPath=[NSString stringWithFormat:@"/Users/diid/Desktop/123/%@",@"14.txt"];
    
    //复制
    
    BOOL isCopySuccess=[fm copyItemAtPath:filePath toPath:toPath error:&error];
    
    if(isCopySuccess)
    {
        NSLog(@"成功");
    }
    else
    {
        NSLog(@"失败");
    }
    
    
    //移动
    
    BOOL isMoveSuccess=[fm moveItemAtPath:filePath toPath:toPath error:&error];
    
    if(isMoveSuccess)
    {
        NSLog(@"成功");
    }
    else
    {
        NSLog(@"失败%@",error);
    }

1.5 计算文件中的内容有多少行
    
    NSString *content=[NSString stringWithContentsOfFile:@"/Users/didi/Desktop/text.txt" encoding:NSUTF8StringEncoding error:nil];
    
    NSArray *arr3=[content componentsSeparatedByString:@"\n"];
    
    int count=[arr3 count];

1.6 文件内容的读写操作

    NSFileHandle *file=[NSFileHandle fileHandleForUpdatingAtPath:@"/Users/didi/Desktop/123/14.txt"];
    
    //读几个字节
    NSData *fileData=[file readDataOfLength:1];
                        
    NSString *str=[[NSString alloc]initWithData:fileData encoding:NSUTF8StringEncoding];
                        
                        
                        
    //到末尾
    NSData *fileData2=[file readDataToEndOfFile];
                        
                        NSString *str2=[[NSString alloc]initWithData:fileData2 encoding:NSUTF8StringEncoding]; 
                        
                        
                        
    //写内容
                        
    NSString *string1=@"123456789";
                        
    NSData *stringData=[string1 dataUsingEncoding:NSUTF8StringEncoding];
                        
    [file writeData:stringData];


你可能感兴趣的:(NSFileManager)