0

隔离存储是 .net for windowsphone 中的一个类,它启用本地存储,无需数据库。

在目标 c 中是否存在类似的课程来制造或崇拜我?

4

2 回答 2

1

听起来很 NSUserDefaults适合你的目的。这很简单。您使用已知的键来设置/获取对象(例如NSDictionary

// Setting a String value
[[NSUserDefaults standardUserDefaults] setObject: localPath forKey:@"NSStringMediaLocalpath"

// and Getting a string
NSString *localMediaPath = [[NSUserDefaults standardUserDefaults] objectForKey:@"NSStringMediaLocalpath"];

您应该在 App init 方法中提供默认值,如下所示:

NSMutableDictionary *initialValues = [NSMutableDictionary dictionary];

 // Careful with BOOL. Is actually a NSNumber object 
[initialValues setObject:[NSNumber numberWithBool:NO] forKey:@"NSManagedObjectContextSaveisAutoSave"];

[initialValues setObject:[NSNumber numberWithInteger:20] forKey:@"NSURLConnectionTimeoutPeriod"];

[[NSUserDefaults standardUserDefaults] registerDefaults:initialValues];
于 2013-08-07T08:47:06.437 回答
0

许多核心类NSArray,如 、NSDictionaryNSString包括直接从文件读取/写入数据的方法。从字面上看,只需告诉数组将自己写入文件,它就会这样做。告诉NSArray从文件创建一个实例,它会这样做。

还有一个称为NSCoding任何类都可以实现的方案,以帮助将自己转换为/从NSData. NSData可以将自身直接写入文件,因此这涵盖了可以将实例序列化为二进制 blob 的任何类。

专门的类通常有自己的文件便利。例如,UIImage可以直接从任何包含兼容图像格式的文件初始化(这是任何常见的——PNG、JPG、GIF 等,有很多)。

如果您需要更细粒度的控制,您可以使用NSFileHandle从文件读取/写入任意数据流。NSFileManager还有读写文件的方法。

这一切都只是在 Cocoa Touch 级别。在 iOS 上,您还可以访问整个 Unix 系统来读写文件,如果您愿意的话。

于 2013-08-06T20:33:36.173 回答