iOS持久性:在目录中存储和检索项目

时间:2013-06-23 15:17:44

标签: ios objective-c persistence nsfilemanager

我想将文件保存到文件夹,然后检索该文件夹的所有内容,所以我这样做:

NSString *dataPath = [documentsDirectory stringByAppendingPathComponent:storageFolder];
// StorageFolder is just a string like: "@"/FavoritesFolder"
// Filename is just a title given like "myTune.mp3"        
NSString *destinationString = [NSString stringWithFormat:@"%@/%@",dataPath,filename];
  BOOL success = [object writeToFile:destinationString atomically:YES];

然后我想要检索对象,所以我做

NSArray *dirContents = [[NSFileManager defaultManager]contentsOfDirectoryAtPath:dataPath error:nil];

但是我得到了一个filename数组(如myTune.mp3)。不是Object是NSDictionary。我做错了什么?

1 个答案:

答案 0 :(得分:1)

你并没有严格“做”任何错误。你的期望是错的。您正在使用的方法(contentsOfDirectoryAtPath:

  

对指定目录执行浅层搜索,并返回任何包含项的路径。

如果要将文件加载回内存,则需要:

  1. 决定您想要的文件
  2. 获取文件的完整路径(目录路径和文件名)
  3. 加载文件(如果是字典,dictionaryWithContentsOfFile: