ArchiverDemo(两种归档的方法)
来源:互联网 发布:域名注册哪家比较好 编辑:程序博客网 时间:2024/05/18 00:41
#import <Foundation/Foundation.h>
int main(int argc,const char * argv[])
{
@autoreleasepool {
/*****************************第一种归档方法*******************************/
//这种归档的缺点是 归档一个对象就对应一个文件多个对象就会又多个文件
//
// //将一个数组归档
// NSArray *array = @[@"abc",@"123",@456];
// //根路径
// NSString *homePath = NSHomeDirectory();
// //创建一个新的路径文件名的后缀可以随便 只是文件名的一部分
// NSString *filePath = [homePath stringByAppendingPathComponent:@"/arc.archive"];
// //判断归档是不是成功
// BOOL success = [NSKeyedArchiver archiveRootObject:array toFile:filePath];
//
// if (success)
// {
// NSLog(@"archive success");
// }
//
//
//
// //解归档
// NSString *homePath = NSHomeDirectory();
// NSString *filePath = [homePath stringByAppendingPathComponent:@"/arc.archive"];
// NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath];
// NSLog(@"%@",array);\
/*****************************第二种归档方法*******************************/
// //自定义内容的归档
// //创建一个可变data 给归档对象
// NSMutableData *data = [NSMutableData data];
// NSString *homePath = NSHomeDirectory();
// NSString *filePath = [homePath stringByAppendingPathComponent:@"archiver2.arc"];
// NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc]initForWritingWithMutableData:data];
// //将不同的数据类型归档
// [archiver encodeObject:@[@"123",@"asd",@34] forKey:@"array"];
// [archiver encodeFloat:23.7 forKey:@"float"];
// //调用下边的方法 将数据传到data里边
// [archiver finishEncoding];
// [archiver release];
// //将文件写入路径并判断是否成功
// BOOL success = [data writeToFile:filePath atomically:YES];
// if (success)
// {
// NSLog(@"archive success");
// }
//解归档
NSString *homePath = NSHomeDirectory();
NSString *filePath = [homePath stringByAppendingPathComponent:@"archiver2.arc"];
NSData *data = [NSDatadataWithContentsOfFile:filePath];
NSKeyedUnarchiver *unArchiver = [[NSKeyedUnarchiveralloc]initForReadingWithData:data];
NSArray *array = [unArchiver decodeObjectForKey:@"array"];
float f = [unArchiver decodeFloatForKey:@"float"];
[unArchiverrelease];
NSLog(@"array = %@ f = %f",array,f);
}
return 0;
}
- ArchiverDemo(两种归档的方法)
- 归档的两种方式
- (新人上路)成绩单实现对象三种排序方法 及归档解归档方法
- 归档数据的读写方法。。。
- ModuleSim的设置(两种方法)
- popup的两种方法
- 数据库连接的两种方法
- Query的两种方法
- 多线程的两种方法
- 学习的两种方法
- 链表逆置的两种方法
- Crontab的两种方法。
- 缓存的两种方法
- 单链表逆置的两种方法
- RMQ的两种方法~
- 求逆元的两种方法
- Bitmap的两种方法
- 复用类的两种方法
- apache-tomcat-7安装及配置&&JDK配置
- Java实用经验总结--Swing篇
- Linux GCC常用命令
- Source Insight与gvim合体变身最强编译器
- struts2 的第一个程序hello struts2
- ArchiverDemo(两种归档的方法)
- python列表函数
- GCC使用入门(一)(1)
- mac移动系列产品分辨率
- 《30天自制操作系统》学习笔记——第八天
- 异或
- GCC使用入门(一)(2)
- 【LeetCode】Binary Tree Preorder Traversal
- POJ 2406 Power Strings