0

我有一个负责录制音频的视图。如何录制多个音频并在表格视图中显示它们?我正在尝试使用 docs 目录来保存录制的音频:

NSArray *folders = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);

NSString *documentsFolder = [folders objectAtIndex:0];

NSString *recordedAudio = [documentsFolder stringByAppendingPathComponent:newAudio];

newAudio 是一个字符串,其中包含用户键入的新音频名称,后缀为 .m4a。要检索保存的音频,我正在尝试这样的事情:

NSArray *folders = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *documentsFolder = [folders objectAtIndex:0];

NSArray *folderContents = [[NSArray alloc] initWithContentsOfFile:documentsFolder];

我希望folderContents 将所有音频都存储在documentsFolder 中,因此可以加载我的表,但它的计数为0。我是docs 目录中的新手,可能我遗漏了一些东西,或者做错了。

出了什么问题,或者有另一种方法可以做到这一点?

4

1 回答 1

1

您获取的文档目录的内容不正确。这是正确的方法:

NSArray *folderContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsFolder error:nil];

Documents 不是文件,而是文件夹。

编辑:这是您保存文件的方式

假设您有一个 NSData 对象,例如

NSData *audioData = ...; // initialiazed with your recording

创建recordedAudio字符串后,它实际上只是您要写入的文件名(可能应该称为audioPath或其他),您需要添加以下内容:

[audioData writeToFile:recordedAudio atomically:YES];

于 2012-06-29T14:57:26.230 回答