iOS文件处理

<wbr><wbr><wbr><wbr> //----------------------获取沙盒信息-----------------</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //获取应用程序根目录</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *path1 = NSHomeDirectory();</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //获取docment的目录</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSArray *patharr = NSSearchPathForDirectori<wbr>esInDomains(NSDocumentDirectory, NSUserDomainMask, YES);</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //取出数组内容</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *path2 = [patharr objectAtIndex:0];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSLog(@"path1:%@\n,patharr = %@\n,path2 =%@\n",path1,patharr,path2);</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> NSArray *patharr = NSSearchPathForDirectori<wbr>esInDomains(NSDocumentDirectory, NSUserDomainMask, YES);</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //取出数组内容</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *path2 = [patharr objectAtIndex:0];</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> NSString *filePath = [path2 stringByAppendingPathCom<wbr>ponent:@"helloword.txt"];</wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> NSLog(@"filePath=%@",filePath);</wbr></wbr></wbr></wbr>


<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //-------------------文件操作 --------------------</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //通过NSFileManager 创建文件</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- 初始化</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSFileManager *fm <wbr>= [NSFileManager defaultManager];</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>



<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- 创建保存的路径</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSArray *patharr = NSSearchPathForDirectori<wbr>esInDomains(NSDocumentDirectory, NSUserDomainMask, YES);</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //取出数组内容</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *path = [patharr objectAtIndex:0];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- path :/Users/liwei/Documents</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- 创建文件保存的路径</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *filePath = [path stringByAppendingPathCom<wbr>ponent:@"helloword.txt"];</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- filepath :/Users/liwei/Documents/helloword.txt</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *text = @"我喜欢凤姐5.6,121212";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- 定义data</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSData *data = [text dataUsingEncoding:NSUTF8StringEncoding];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- 写入文件</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> BOOL isOK=[fm createFileAtPath:filePath contents:data attributes:nil]; <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> if (isOK) {</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"文件创建成功!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }else{</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"失败了!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //-------------创建文件方法2:简单版</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *str = @"缺课的人喜欢凤姐!";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> [str writeToFile:@"/Users/liwei/Desktop/fengjie.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> //--------------------------创建目录----------------</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> //withIntermediateDirector<wbr>ies</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // YES 如果文件夹不存在,则创建, 如果存在表示可以覆盖</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // NO <wbr>如果文件夹不存在,则创建, 如果存在不可以覆盖</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *dirPath = @"/Users/liwei/Desktop/test";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> BOOL isOK = [fm createDirectoryAtPath:dirPath withIntermediateDirector<wbr>ies:NO attributes:nil error:nil];</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> if (isOK) {</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"创建成功!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }else{</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"创建失败!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //------------ 读取文件 -------------</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //三种方法读取文件,假设读取文件内容为NSString</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //1、通过NSData 读取文件</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // <wbr>1)读取文件到NSData</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *filePath=@"/Users/liwei/Desktop/fengjie.txt";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSData *data2 = [NSData dataWithContentsOfFile:filePath];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // <wbr>2)将NSData转换为NSString</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *contentStr1 = [[NSString alloc] initWithData:data2 encoding:NSUTF8StringEncoding];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSLog(@"fileContent------:%@",contentStr1);</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //2、根据系统路径,指定文件名的文件读取</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // <wbr>1)产生文件路径</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSArray *patharr = NSSearchPathForDirectori<wbr>esInDomains(NSDocumentDirectory, NSUserDomainMask, YES);</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //取出数组内容</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *path = [patharr objectAtIndex:0];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- path :/Users/liwei/Documents</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---- 创建文件保存的路径</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *filePath2 = [path stringByAppendingPathCom<wbr>ponent:@"helloword.txt"];</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSLog(@"filePath2 : %@",filePath2);</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // <wbr>2)读取到NSData</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSData *data3 = [NSData dataWithContentsOfFile:filePath2];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // <wbr>3)转换到NSString<wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *contentStr3 = [[NSString alloc] initWithData:data3 encoding:NSUTF8StringEncoding];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSLog(@"contentStr3 : %@",contentStr3);</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //3、字符串使用文件进行初始化 stringWithContentsOfFile<wbr>:path</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //定义字符串的同时就用文件初始化</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *contentStr4 = [NSString stringWithContentsOfFile<wbr>:@"/Users/liwei/Desktop/test.txt" encoding:NSUTF8StringEncoding error:nil];</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSLog(@"contentStr4 <wbr>: <wbr> %@",contentStr4);</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> // ----------------- 移动文件 -------------</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> NSString *formPath = @"/Users/liwei/Desktop/test2.txt";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *moveToPath = @"/Users/liwei/Desktop/test3/test.txt";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //创建目录 <wbr>/Users/liwei/Desktop/test3</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> [fm createDirectoryAtPath:[moveToPath stringByDeletingLastPath<wbr>Component] withIntermediateDirector<wbr>ies:YES attributes:nil error:nil];</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSError *err;</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //开始移动文件,并且返回移动结果 YES or NO</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> BOOL isOK = [fm moveItemAtPath:formPath toPath:moveToPath error:&amp;err];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> if(isOK){</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"移动文件成功!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }else{</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"移动失败!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //---------------文件复制------------------</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> NSString *formPath = @"/Users/liwei/Desktop/test3/test.txt";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *copyToPath = @"/Users/liwei/Desktop/备份/test3.txt";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //创建目录 <wbr>/Users/liwei/Desktop/备份</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> [fm createDirectoryAtPath:[copyToPath stringByDeletingLastPath<wbr>Component] withIntermediateDirector<wbr>ies:YES attributes:nil error:nil];</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSError *err;</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //开始复制文件,并且返回移动结果 YES or NO</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> BOOL isOK = [fm copyItemAtPath:formPath toPath:copyToPath error:&amp;err];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> if(isOK){</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"复制文件成功!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }else{</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"复制文件失败!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> //-----------------删除文件--------------</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> NSString *deletePath = @"/Users/liwei/Desktop/备份/test3.txt";</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //判断要删除的文件是否存在</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> if ([fm fileExistsAtPath:deletePath]) {</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"文件存在!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> //如果存在,则删除文件</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> if ([fm removeItemAtPath:deletePath error:nil]) {</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"文件删除成功!");</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> }else{</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"文件删除失败!");</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }else{</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> //提示要删除的文件不存在</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"您要删除的文件不存在!");</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //----------------目录列表--------------</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //设定要读取的目录</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *userDirPath = @"/Users/liwei/Desktop";//NSHomeDirectory();</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //定义枚举对象</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSDirectoryEnumerator *dirEnum = [fm enumeratorAtPath:userDirPath];</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //定义变量存储路径</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> NSString *dirPath =nil;</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> //遍历目录,打印所有的文件或者子目录名称</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> while ((dirPath = [dirEnum nextObject])!=nil) {</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr> NSLog(@"list dir: --- %@",dirPath);</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr> }</wbr></wbr>
<wbr><wbr> return 0;</wbr></wbr>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值