有一个目标c类,如IsolatedStorage for。净?

时间:2013-08-05 20:54:27

标签: c# iphone .net objective-c windows-phone-8

IsolatedStorage在.net中的一个类用于windowsphone,它支持本地存储,没有数据库。

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

2 个答案:

答案 0 :(得分:1)

听起来NSUserDefaults符合你的目的。这很简单。您使用已知的Key来设置/获取对象(如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];

答案 1 :(得分:0)

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

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

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

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

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