0

我正在执行以下操作以将对象存储为存档:

[[NSUserDefaults standardUserDefaults] setObject:[NSKeyedArchiver archivedDataWithRootObject:self.shapeLayers] forKey:@"mySavedArray"];

我知道它工作正常,因为我可以重新加载它。问题是,我怎样才能找到这个文件?我想在存档后查看它的大小,以便将存档与 .m 文件进行比较,最终我可能需要将其上传到服务器。我是否正确保存它,还是应该以不同的方式进行?

4

1 回答 1

1

标准用户默认值存储在“ App Home Directory /Library/Prefereneces/”中的单个文件中。归档数据是该文件的一部分。它不保存为单独的文件。如果要获取数据大小,请使用 NSData 的 .length 属性。

NSData *archivedData = [NSKeyedArchiver archivedDataWithRootObject:self.shapeLayers];
NSUInteger size = [archivedData length];
[[NSUserDefaults standardUserDefaults] setObject: forKey:@"mySavedArray"];
于 2013-07-12T19:35:42.560 回答