将文件从临时目录复制到资源文件夹

时间:2012-06-13 12:49:44

标签: objective-c ios xcode

我能够在我的应用中录制.caf文件并将其播放回用户。我希望能够永久保存它,所以我想将它移动到我的资源文件夹。我不确定这是否是正确的举动或是否将它放在文档目录中更好,但我从资源访问所有其他声音文件,所以我认为这将是正确的选择。有谁知道如何做到这一点?谢谢!

如何将录音保存到temp:

NSURL *soundFileURL=[NSURL fileURLWithPath:
                         [NSTemporaryDirectory()
                          stringByAppendingString:@"soundFile1.caf"]];

2 个答案:

答案 0 :(得分:1)

您无法在应用程序包中添加,删除或修改文件,这意味着您无法将项目添加到资源目录。

如果文件是用户想要保留在应用程序中的内容,则应将其存储在文档目录中。您可能希望阻止将其备份到iCloud,您可以按照Apple's instructions here进行备份。

要获取文档目录的路径,或文档目录中给定文件名的路径,可以使用以下方法:

+ (NSString *)pathForDocumentsDirectory
{
    NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    return [documentPaths objectAtIndex:0];
}

+ (NSString *)pathForFileInDocumentsDirectory:(NSString *)filename
{
    return [[self pathForDocumentsDirectory] stringByAppendingPathComponent:filename];
}

答案 1 :(得分:0)

使用应用程序时,无法在应用程序的应用程序包中添加任何内容,因此请将它们添加到应用程序的文档或库文件夹中