gpt4 book ai didi

ios - 尝试加载已保存的 NSMutableArray

转载 作者:行者123 更新时间:2023-11-28 21:45:39 25 4
gpt4 key购买 nike

这是我用来保存 NSMutableArray“名称”的代码(在用户按下保存按钮后),我认为它没有问题,但我不确定相应的代码是什么当我重新打开我的应用程序时加载我的数组。任何帮助将不胜感激!

- (IBAction)save:(id)sender {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
NSString *fullFileName = [NSString stringWithFormat:@"%@/temporaryArray", docDir];
[NSKeyedArchiver archiveRootObject:names toFile:fullFileName];
}

最佳答案

好吧,你已经完成了一半。您已经知道如何归档对象。问题是,您如何取消存档它?正如我在评论中解释的那样,这是通过非常恰本地命名的 NSKeyedUnarchiver 类完成的。

让我们从代码示例开始:

@try {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
NSString *defaultPath = [docDir stringByAppendingPathComponent:@"temporaryArray"];.

self.yourArray = [NSKeyedUnarchiver unarchiveObjectWithFile: defaultPath];

if (!self.yourArray) {
NSLog(@"Error!");
} else {
// Success!
}
} @catch (NSException *exception) {
NSLog(@"Some error happened: %@", exception);
}

NSKeyedUnarchiver 类获取包含由 NSKeyedArchiver 归档的内容的文件的路径。然后它将读取该文件并返回“根”对象——您告诉 NSKeyedArchiver 进行归档的对象。就这么简单。 (当然,你应该包括错误处理,我在上面给出了一个简短的例子。)

如果你想要其他资源,你可以阅读this great introductory article由著名的 Mattt Thompson 撰写,很好地解释了类(class)背后的概念。

希望这对您有所帮助。

关于ios - 尝试加载已保存的 NSMutableArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30313396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com