我知道可能有很多方法可以做到这一点。
我想知道我应该考虑什么方向。我需要速度和易用性。我猜想要使用关联数组。但对经验丰富的ios开发人员对此有何评论感兴趣。
基本上它将是大约50-200项。仅此而已。每个项目包含一个单词和一个文件路径。 (请注意,文件的详细信息将在运行时处理/合并到应用程序中。)
答案 0 :(得分:1)
200 NSStrings - 除了writeToFile之外还有其他任何内容:和initWithContentsOfFile:读取/写入NSDictionary的方法。像CoreData这样的所有其他解决方案听起来都太重了,无法满足您的需求。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSString *filename = [documentsPath stringByAppendingPathComponent:@"yourfile.plist"];
//write to file
[yourdictionary writeToFile:filename atomically:YES];
//load from file
NSMutableDictionary *loadedDictonary = [[NSMutableDictionary alloc] initWithContentsOfFile:filename];
答案 1 :(得分:1)
这个词是一个字符串。路径是一个字符串。单词和路径之间的配对是字典。 NSDictionary可以将自己写入文件并从文件中自行读取。完成。你甚至不需要“处理”任何东西:这个文件只会像NSDictionary一样生动,随时可以使用。
答案 2 :(得分:1)
这取决于您的数据如何与您的应用相匹配: 如果只是支持您的应用的数据,您可以轻松制作并将其存储到您应用的首选项中:
NSDictionary * allUrls = @{ @"aString":@"a/path/to/a/file", @"string2" : @"url2" ...}
NSUserDefaults * preferences = [NSUserDefaults standardUserDefaults];
[preferences setObject:allUrls forKey:@"ALL URLS"];
然后从应用中的任意位置检索它:
NSUserDefaults * preferences = [NSUserDefaults standardUserDefaults];
NSDictionary * allUrls = [preferences objectForKey:@"ALL URLS"];