我的应用程序根据iTunes资料库中的歌曲创建NSData
。我不想把它写到捆绑包中的文件(文件不存在)。如何在那里创建文件?
答案 0 :(得分:4)
stavash是对的;你无法保存到捆绑包。要保存到文档目录,请执行以下操作:
NSString *documentsDir = (NSString *)[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *pathForFile = [documentsDir stringByAppendingPathComponent:fileNameString];
[songData writeToFile:pathForFile atomically:YES];
然后恢复文件的内容:
NSData *songData = [[NSData alloc] initWithContentsOfFile:pathForFile];
答案 1 :(得分:3)
就像stavash所说,捆绑是只读的。您可以将其保存到文档目录中。这是一个例子:
NSString *root = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [root stringByAppendingPathComponent:@"yourfilename.ext"];
[yourFileData writeToFile:filePath atomically:NO];
答案 2 :(得分:1)
您无法写入捆绑包。考虑将其存储在文档目录中。