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];

ドキュメントはファイルではなく、フォルダです。

編集:これはあなたがファイルを保存する方法です

次のようなNSDataオブジェクトがあると仮定します

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

文字列を作成した後recordedAudio、実際には書き込みたいファイル名(おそらく呼び出されるaudioPathか何か)であるため、これを追加する必要があります。

[audioData writeToFile:recordedAudio atomically:YES];

于 2012-06-29T14:57:26.230 に答える