我有一个负责录制音频的视图。如何录制多个音频并在表格视图中显示它们? 我正在尝试使用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目录中的新手,可能是我遗漏了某些东西,或者做错了。
有什么问题,还是有另一种方法可以实现这一目标?
答案 0 :(得分:1)
您正在错误地获取文档目录的内容。这是正确的方法:
NSArray *folderContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsFolder error:nil];
文档不是文件,而是文件夹。
编辑:这是保存文件的方式
假设您有一个NSData对象,例如
NSData *audioData = ...; // initialiazed with your recording
创建recordedAudio
字符串后,实际上只是要写入的文件名(应该称为audioPath
或其他内容),您需要添加:
[audioData writeToFile:recordedAudio atomically:YES];