国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

IOS學習筆記2015-04-03OC-API-文件讀寫

2019-11-14 19:19:24
字體:
來源:轉載
供稿:網友
////  WPFileHelper.m//  OC-API-文件操作////  Created by wangtouwang on 15/4/3.//  Copyright (c) 2015年 wangtouwang. All rights reserved.//#import "WPFileHelper.h"@implementation WPFileHelper+(NSString *)getFileToString:(int)tag{    NSString *result ;    //目標 讀取字符型文件 例如后綴.txt    if (tag==0) {        //方法1 使用 NSString        NSError *error;        NSString *filePath =@"/Users/wangtouwang/Desktop/OC-控件.txt";        result = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error];        if (error) {            NSLog(@"read error ,the error is %@",error);        }else{            NSLog(@"read success,the file content is %@",result);        }    }else if (tag==1){        //方法2 使用  NSFileManager        NSString *filePath =@"/Users/wangtouwang/Desktop/OC-控件.txt";        NSFileManager *manager=[NSFileManager defaultManager];        NSData *data = [manager contentsAtPath:filePath];        result=  [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];        //NSLog(@"%@",result);    }else if (tag==2){        //方法3  NSFileHandle        NSString *filePath =@"/Users/wangtouwang/Desktop/OC-控件.txt";        NSFileHandle *handler = [NSFileHandle fileHandleForReadingAtPath:filePath];        NSData *data = [handler readDataToEndOfFile];        result=  [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];        [handler closeFile];        //NSLog(@"%@",result);    }else if(tag==3){        //方法4  NSData        NSString *filePath =@"/Users/wangtouwang/Desktop/OC-控件.txt";        //NSDataReadingMappedIfSafe參數。使用這個參數后,iOS就不會把整個文件全部讀取的內存了,而是將文件映射到進程的地址空間中,        //這么做并不會占用實際內存。這樣就可以解決內存滿的問題。        NSData *data= [NSData dataWithContentsOfFile:filePath options:nil error:nil];        result =[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];       // NSLog(@"%@",result);    }    return result;}+(NSData *) getFileToData:(int)tag{    NSData *result = nil;    //目標 讀取二進制文件 例如 圖片    NSString *imagePath = @"/Users/wangtouwang/Desktop/TEMP/51sPBOtpQ0L._SL500_AA300_.jpg";    if (tag==0) {        // 方法1 NSData        result = [NSData dataWithContentsOfFile:imagePath];       // NSInteger len = result.length;        //NSLog(@"長度 = %lu",len);    }else if (tag == 1){        //方法2 NSFileHandle        NSFileHandle *handle = [NSFileHandle fileHandleForReadingAtPath:imagePath];       result =[handle readDataToEndOfFile];        [handle closeFile];        //方法3 NSFileManager    }else if(tag==2){        NSFileManager *manger = [NSFileManager defaultManager];       result = [manger contentsAtPath:imagePath];    }    return result;}+(void)writerFileByString:(NSString *)str{    NSString  *content = str;    NSString *filePath =@"/Users/wangtouwang/Desktop/新文件.txt";    // 寫入字符型文件 例如后綴.txt 假如文件不存在依然成功    int tag =3;    if (tag==0) {        //方法1 NSString        [content writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];    }else if (tag==1){        //方法2  NSFileHandle 假如文件不存在會失敗        NSData *data = [content dataUsingEncoding:NSUTF8StringEncoding];        NSFileHandle *handle = [NSFileHandle fileHandleForWritingAtPath:filePath];        [handle writeData:data];        [handle closeFile];    }else if(tag==2){        //方法3 NSFileManager 假如文件不存在依然成功        NSFileManager *manager = [NSFileManager defaultManager];        BOOL flag = [manager createFileAtPath:filePath contents:[content dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];        if (flag) {            NSLog(@"寫入成功");        }    }else if (tag==3){        //方法4  NSMutableData 假如文件不存在依然成功        NSMutableData *writer = [[NSMutableData alloc] init];        [writer appendData:[content dataUsingEncoding:NSUTF8StringEncoding]];        [writer writeToFile:filePath atomically:YES];    }}+(void)writerFileByData:(NSData *)data{    //寫入二進制文件 例如圖片    NSString *filePath =@"/Users/wangtouwang/Desktop/新文件.jpg";    int tag =2;    if (tag==0) {        //方法1 NSData        [data writeToFile:filePath atomically:YES];    }else if(tag==1){        //方法2 NSFileHanle 假如文件不存在則會失敗,應該先判斷是否存在,再看是否需要創建        NSFileHandle *handle = [NSFileHandle fileHandleForWritingAtPath:filePath];        [handle writeData:data];        [handle classCode];    }else if(tag==2){        //方法3 NSFileManager        NSFileManager *manager= [NSFileManager defaultManager];        [manager createFileAtPath:filePath contents:data attributes:nil];    }else if (tag==3){        // 方法4 NSMutableData        NSMutableData *writer = [[NSMutableData alloc] init];        [writer appendData:data];        [writer writeToFile:filePath atomically:YES];    }}@end

 

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 迁安市| 衡山县| 九寨沟县| 万载县| 五大连池市| 中西区| 扎囊县| 通道| 宝鸡市| 海林市| 抚州市| 越西县| 杭锦旗| 苏州市| 东光县| 达拉特旗| 三门县| 定南县| 栖霞市| 临泉县| 晋城| 湘西| 葵青区| 丹阳市| 竹山县| 苏尼特左旗| 罗田县| 灵宝市| 四子王旗| 宣武区| 塘沽区| 平阳县| 高邑县| 桃园县| 常熟市| 乡宁县| 盈江县| 旌德县| 青川县| 元江| 湖口县|