归档解档(文件写入与读取)
来源:互联网 发布:漫画集软件 编辑:程序博客网 时间:2024/05/16 06:36
**第一种方式:对象单一**//归档-(void)NSKeyedArchiver{ NSArray *array = [NSArray arrayWithObjects:@"L",@"J",@"F",nil]; NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent:@"array.LJF"]; NSLog(@"%@", filePath); BOOL success = [NSKeyedArchiver archiveRootObject:array toFile:filePath]; if(success){ NSLog(@"保存成功"); }}//解档-(void)NSKeyedUnarchiver{ NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent:@"array.LJF"]; id array = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath]; NSLog(@"%@",array);}
**第二种方式:对象多个**//归档2-(void)NSKeyedArchiverTwo{ NSArray *array = [NSArray arrayWithObjects:@"L",@"J",@"F", nil]; NSDictionary *dic = @{@"name":array}; NSMutableData *data = [NSMutableData data]; NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data]; //编码 [archiver encodeObject:dic forKey:@"dic"]; [archiver encodeObject:array forKey:@"array"]; [archiver encodeInt:100 forKey:@"num"]; [archiver encodeObject:@"LJF" forKey:@"name"]; //完成编码,将上面的归档数据填充到data中,此时data中已经存储了归档对象的数据 [archiver finishEncoding]; NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent:@"array.LJF"]; BOOL success = [data writeToFile:filePath atomically:YES]; if(success){ NSLog(@"归档成功"); }}//解档2-(void)NSKeyedUnarchiverTwo{ NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent:@"array.LJF"]; //读取归档数据 NSData *data = [[NSData alloc] initWithContentsOfFile:filePath]; //创建解归档对象,对data中的数据进行解归档 NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data]; //解归档 NSArray *array = [unarchiver decodeObjectForKey:@"array"]; NSLog(@"%@",array); NSDictionary *dic = [unarchiver decodeObjectForKey:@"dic"]; NSLog(@"%@", dic); NSString *name = [unarchiver decodeObjectForKey:@"name"]; NSLog(@"%@",name); int value = [unarchiver decodeIntegerForKey:@"num"]; NSLog(@"%d", value);}
0 0
- 归档解档(文件写入与读取)
- 读取与写入文件
- 读取与写入XML文件
- XML文件写入与读取
- php文件读取与写入
- C++文件读取与写入
- 文件的读取与写入
- 文件流读取与写入
- java文件写入与读取
- C++ 文件读取与写入
- HDFS文件写入与读取
- HDFS文件写入与读取
- PHP文件写入与读取
- 文件FILE写入与读取
- hdf5文件读取与写入
- 文件归档与解档问题
- C#写入文件,与读取文件内容
- 写入xml文件与读取xml文件
- 编译并链接pthreads-win32静态库
- 例题3-17(筛选法求素数)
- Java:单例模式的七种写法
- Java之Socket编程实现一对一通信
- LeetCode 11 Container With Most Water (C,C++,Java,Python)
- 归档解档(文件写入与读取)
- JSONP 安全攻防技术
- dot net程序逆向工程基本方法
- Java不用IDE工具时如何编译的
- js获取页面窗口大小
- open-vm-tools-dkms : 依赖: open-vm-tools (>= 2:9.4.0-1280544-5ubuntu3) 但是它将不会被安装
- 浅谈栈&&进制转换
- https://leetcode.com/problems/simplify-path/
- poj2456