码迷,mamicode.com
首页 > 其他好文 > 详细

黑马程序员——Foundation——NSFileManager和NSFileHandle

时间:2015-05-12 22:21:04      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

技术分享
//NSFileManager
#import <Foundation/Foundation.h> #define PATH @"/Users/fengze/Desktop" int main(int argc, const char * argv[]) { @autoreleasepool { //创建 file manager对象 NSFileManager *fm = [NSFileManager defaultManager]; //查看指定文件路径并返回一个数组,数组储存文件和文件夹的目录 NSArray *array = [fm contentsOfDirectoryAtPath:PATH error:nil]; // 上述方法只是浅度遍历,不能遍历文件夹里面的内容 //深度遍历 array = [fm subpathsOfDirectoryAtPath:PATH error:nil]; // 可以遍历当前文件夹里面所有内容 // 创建目录 [fm createDirectoryAtPath:[NSString stringWithFormat:@"%@/练习",PATH] withIntermediateDirectories:NO attributes:nil error:nil]; // 上述意思是在PATH目录下创建一个dir文件 //创建文件 [fm createFileAtPath:[NSString stringWithFormat:@"%@dir",PATH] contents:[@"hello" dataUsingEncoding:NSUTF8StringEncoding] attributes:nil]; //在dir文件夹里面创建了hello的文件,但是创建的是一个什么拓展名单文件? // // //文件的删除 // [fm removeItemAtPath:[NSString stringWithFormat:@"%@/dir",PATH] error:nil]; //会把目录下的所有内容删除 //文件的拷贝 [fm copyItemAtPath:[NSString stringWithFormat:@"%@/dir",PATH] toPath:[NSString stringWithFormat:@"%@/dir2",PATH] error:nil]; //文件的移动 [fm moveItemAtPath:[NSString stringWithFormat:@"%@/dir",PATH] toPath:[NSString stringWithFormat:@"%@/dir2",PATH] error:nil]; /* 文件的删除,文件的拷贝,文件的移动都是既可以用在文件上面,也可以用在文件夹上面 */ } return 0; }
技术分享

NSHandle

 

技术分享
#import <Foundation/Foundation.h>


//NShandle称为文件句柄

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        
        //以只读的的方式打开文件生成文件句柄
        NSFileHandle *fh = [NSFileHandle fileHandleForReadingAtPath:@"/Users/fengze/Desktop/test/"];
        
        /*
         文件从硬盘到内存叫做读,从内存到到硬盘叫做写,内存相当于大脑,硬盘相当于课本
         */
        
        //根据指定的范围读取文件内容
        NSData *data = [fh readDataOfLength:3];
        
        data = [fh readDataOfLength:5];    //第二次读取的内容会接着上次读取的内容继续往下读
        
       //一次性读取文件的所有内容
        NSString *str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

        
        //以只写的方式打开文件生成文件句柄
        NSFileHandle *fh2 = [NSFileHandle fileHandleForWritingAtPath:@"/Users/fengze/Desktop/test"];
        
        
        [fh2 writeData:[@"hello" dataUsingEncoding:NSUTF8StringEncoding]];
        //写入的内容会替换掉文件的前面的内容,后面的内容不变
        
       // [fh2 truncateFileAtOffset:0];
        //将文件内容截断值0字节(清空)
        
        //将读写指针设到文件的末尾
        [fh seekToEndOfFile];
        //在文件的末尾追加内容
        [fh2 writeData:[@"xxx" dataUsingEncoding:NSUTF8StringEncoding]];
        
        
        
    }
    return 0;
}
技术分享

 

黑马程序员——Foundation——NSFileManager和NSFileHandle

标签:

原文地址:http://www.cnblogs.com/qiang0901/p/4498539.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!