NSKeyedArchiver
========================================================*/
NSString *str = @”abc”;
NSString *astr = @”efg”;
NSArray *Array = [NSArray arrayWithObjects:str, astr, nil];
//保存数据
NSString *Path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filename = [Path stringByAppendingPathComponent:@"test"];
[NSKeyedArchiver archiveRootObject:Array toFile:filename];
str = @”a”;
astr = @”";
//加载数据
NSArray *arr = [NSKeyedUnarchiver unarchiveObjectWithFile: filename];
str = [arr objectAtIndex:0];
astr = [arr objectAtIndex:1];
NSLog(@”str:%@”,str);
NSLog(@”astr:%@”,astr);
分享到:
相关推荐
使用`+ (void)archiveRootObject:(id)object toFile:(NSString *)path`方法可以将任何对象(不仅仅是基础数据类型)保存到文件中。这种方法要求每个被保存的对象都具有一个唯一的键,以便后续读取时能够正确地重建...
日期(Date)是Foundation框架中的基础类型,可以方便地通过NSKeyedArchiver进行归档和反序列化。在示例代码中,可能会创建一个Date对象,将其归档到文件,然后在应用重新启动时从同一文件中恢复这个日期。 在实际...
本文将深入探讨iOS的基础数据存储方法,包括沙盒机制、Plist、Preference(偏好设置)、归档和反归档。理解并熟练掌握这些技术对于构建功能完善的iOS应用至关重要。 首先,我们要了解iOS应用的“沙盒”机制。每个...
为了提高用户体验,可以使用`NSKeyedArchiver`等方法存储用户的登录信息。这样,在用户再次使用应用时,可以通过读取这些信息来实现快速登录。 #### 三、高级功能 ##### 3.1 网络状态检测 使用Reachability类...
`NSKeyedArchiver`和`NSKeyedUnarchiver`用于对象的序列化和反序列化,将对象转换为数据存储,然后从数据恢复。这对于持久化对象状态非常有用。 11. **邮箱与密码验证** OC提供正则表达式库`NSRegularExpression`...
直接写入文件是另一种基础的存储方法。你可以选择将数据写入文本文件、JSON文件或其他格式的文件。这种方式灵活性较高,可以处理任何类型的数据,但需要开发者自行管理读写操作,包括错误处理和数据格式化。此外,...
《Foundation Framework:构建iOS应用程序的核心基石》 Foundation框架是苹果公司为iOS开发人员提供的一套核心框架库,它是构建iPhone、iPad...掌握Foundation框架的使用方法,对于成为一名优秀的iOS开发者至关重要。
本文档旨在全面解析`NSData`的使用方法、功能特性以及在实际开发中的应用技巧,帮助开发者深入理解并高效利用这一关键组件。 ### 一、`NSData`简介 `NSData`是Objective-C语言中用于封装任意长度二进制数据的类。...
现在,我们将深入探讨iOS归档的原理、使用方法以及注意事项。 ### iOS归档基础 #### 1. NSKeyedArchiver与NSKeyedUnarchiver 在iOS中,`NSKeyedArchiver` 和 `NSKeyedUnarchiver` 是实现归档的核心类。`...
当我们需要将一个NSDictionary序列化成NSData时,可以使用`NSKeyedArchiver`类的`archiveRootObject:toFile:`方法。这个方法会将指定的根对象(这里就是我们的NSDictionary)编码并保存到一个文件中。在内存中操作...
本PPT教案将深入探讨Foundation框架,帮助学习者理解并掌握其重要概念和使用技巧。 首先,我们要明白Foundation框架的基本概念。框架在软件开发中是一个组织有序的资源集合,包括类、方法、函数和文档,旨在简化...
- 使用`NSKeyedArchiver`的`archiveRootObject:toFile:`方法将归档后的对象保存到文件,对于`NSUserDefaults`,通常是保存在内存中。 2. **从`NSUserDefaults`读取自定义对象**: - 使用`NSKeyedUnarchiver`的`...
在Swift编程中,归档和解档是两个关键的概念,特别是在处理数据持久化时。归档是将对象的状态转换为可存储格式(如二进制数据),而解档则是将这些...正确理解和使用这一机制对于iOS开发者来说是一项基础但重要的技能。
- **头文件导入**: 使用`#import`指令导入`Foundation`框架,这是Objective-C程序的基础库。 - **自动释放池**: `@autoreleasepool`是一个特殊的代码块,用于自动管理对象的生命周期。在这个代码块内创建的对象会在...
在这个方法中,你需要遍历对象的所有属性,并使用`encodeWithCoder:`方法的参数`aCoder`,调用其`encodeObject:forKey:`或`encodeInt:forKey:`等方法来编码每个属性。例如,在示例中的`user`类,属性`name`、`email`...
2. 使用`NSKeyedArchiver`的`archiveRootObject:toFile:`方法将`ScaryBug`对象编码并写入数据容器。 3. 获取应用的文档目录路径,这通常通过`NSSearchPathForDirectoriesInDomains`和`NSDocumentDirectory`获取。 4....
5. **NSCoding + NSKeyedArchiver**:结合使用,可以实现复杂对象的序列化存储。 深拷贝与浅拷贝是内存管理中的重要概念: - **深拷贝**:创建新对象,复制原始对象的所有内容,子类对象的地址也会改变,确保拷贝后...
1. `NSDate`转`NSString`:使用`NSDateFormatter`设置日期和时间格式,然后调用`stringFromDate:`方法。 2. `NSString`转`NSDate`:同样使用`NSDateFormatter`,先设置日期格式,然后调用`dateFromString:`方法。 3....
6. **数据持久化**:如果应用支持保存和加载画图,那么就涉及到数据持久化的技术,如使用NSKeyedArchiver将画图数据序列化存储,或者使用Core Data进行更复杂的数据管理。 7. **性能优化**:对于大规模的手绘操作,...