IOS 读取Json文件、读取plist文件
2015-09-16 10:46
411 查看
从工程项目中读取文件的操作
(1)从工程项目中读取Json文件
(2)从工程项目中读取plist文件
(3)从项目文件中读取文件到NSData、NSString、NSFileHandle、NSFileManager实例中
//第一种方法: NSFileManager实例方法读取数据
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDesktopDirectory, NSUserDomainMask, YES);
NSString* thepath = [paths lastObject];
thepath = [thepath stringByAppendingPathComponent:@"fd_list.txt"];
NSLog(@"桌面目录:%@", thepath);
NSFileManager* fm = [NSFileManager defaultManager];
NSData* data = [[NSData alloc] init];
data = [fm contentsAtPath:thepath];
NSLog(@"%@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
//第二种方法: NSData类方法读取数据
data = [NSData dataWithContentsOfFile:thepath];
NSLog(@"NSData类方法读取的内容是:%@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
//第三种方法: NSString类方法读取内容
NSString* content = [NSString stringWithContentsOfFile:thepath encoding:NSUTF8StringEncoding error:nil];
NSLog(@"NSString类方法读取的内容是:\n%@",content);
//第四种方法: NSFileHandle实例方法读取内容
NSFileHandle* fh = [NSFileHandle fileHandleForReadingAtPath:thepath];
data = [fh readDataToEndOfFile];
NSLog(@"NSFileHandle实例读取的内容是:\n%@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
(1)从工程项目中读取Json文件
NSString* jsonStr = nil; //第一种方法读取 NSString *mainBundleDirectory=[[NSBundle mainBundle] bundlePath]; NSString *path=[mainBundleDirectory stringByAppendingPathComponent:@"route_points_demo.json"]; NSURL *url=[NSURL fileURLWithPath:path]; NSData *data = [[NSData alloc] initWithContentsOfURL:url]; jsonStr=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; //第二种方法读取 NSString *filePath = [[NSBundle mainBundle] pathForResource:@"route_points_demo" ofType:@"json"]; jsonStr = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil]; NSData *jaonData = [[NSData alloc] initWithData:[jsonStr dataUsingEncoding:NSUTF8StringEncoding]]; NSArray *allTrack = [NSJSONSerialization JSONObjectWithData:jaonData options:(NSJSONReadingMutableContainers) error:nil];
(2)从工程项目中读取plist文件
NSString *addressPath = [[NSBundle mainBundle] pathForResource:@"address" ofType:@"plist"]; NSMutableDictionary *dict = [[NSMutableDictionary alloc]initWithContentsOfFile:addressPath]; self.provinces = [dict objectForKey:@"address"]; //取出address数组
(3)从项目文件中读取文件到NSData、NSString、NSFileHandle、NSFileManager实例中
//第一种方法: NSFileManager实例方法读取数据
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDesktopDirectory, NSUserDomainMask, YES);
NSString* thepath = [paths lastObject];
thepath = [thepath stringByAppendingPathComponent:@"fd_list.txt"];
NSLog(@"桌面目录:%@", thepath);
NSFileManager* fm = [NSFileManager defaultManager];
NSData* data = [[NSData alloc] init];
data = [fm contentsAtPath:thepath];
NSLog(@"%@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
//第二种方法: NSData类方法读取数据
data = [NSData dataWithContentsOfFile:thepath];
NSLog(@"NSData类方法读取的内容是:%@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
//第三种方法: NSString类方法读取内容
NSString* content = [NSString stringWithContentsOfFile:thepath encoding:NSUTF8StringEncoding error:nil];
NSLog(@"NSString类方法读取的内容是:\n%@",content);
//第四种方法: NSFileHandle实例方法读取内容
NSFileHandle* fh = [NSFileHandle fileHandleForReadingAtPath:thepath];
data = [fh readDataToEndOfFile];
NSLog(@"NSFileHandle实例读取的内容是:\n%@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
相关文章推荐
- week1
- 使用xlwt将json文件,写入xls文件
- NodeJs读取JSON文件格式化时的注意事项
- iOS 时间戳
- iOS 蓝牙4.0(BLE)后台或者锁屏也可以接收数据的方法
- iOS 9正式版开始推送 升级机型非常广泛
- iOS 9应用开发基础教程下册
- iOS 10应用开发基础教程
- IOS巅峰之归档与反归档
- ios 获取手机中所有图片
- iOS多用连接、反向协议、安全
- iOS开发脚踏实地学习day09-QQ好友列表
- 关于iOS开发
- ios开发日记- 7 禁用搜狗键盘 使用系统键盘
- ios开发日记 - 6上传应用报错Missing Push Notification Entitlement
- 初学iOS笔记
- iOS之 实现单例的步骤和具体实例:
- iOS 9学习系列: 更加智能化的Xcode代码覆盖率测试工具
- IOS中延时执行的几种方式的比较和汇总
- ios UrlEncode与UrlDecode