-3

私はこのコードを持っています。これにより、ドキュメントディレクトリから削除する特定のファイルを指定できます。

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectoryPath = [[paths objectAtIndex:0] stringByAppendingString:@"/Podcasts"];

    NSString* checkIfFileExists = [documentsDirectoryPath stringByAppendingPathComponent:_fileName];

    NSFileManager *fileManager = [NSFileManager defaultManager];
    [fileManager removeItemAtPath:checkIfFileExists error:NULL];

ボタンでファイルを削除したい場合に便利ですが、特定のファイルだけを削除したいのではなくremoveItemAtPath:、配列内の任意のファイルを処理するためにを参照するにはどうすればよいですか?一度にすべてのファイルを削除したくありません。

4

3 に答える 3

1

のディレクトリの内容を取得でき- (NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)errorますNSFileManager

https://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSFileManager_Class/Reference/Reference.html

次に、配列をループして、ファイルを1つずつ削除します。

于 2013-01-04T09:06:56.350 に答える
1

同じコードを使用できます。

ただし、次のようにファイル名を追加する必要があります。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectoryPath = [[paths objectAtIndex:0] stringByAppendingString:@"/Podcasts"];
NSString *file = [documentsDirectoryPath stringByAppendingString:@"%@",[yourFileNamesArray objectAtIndex:0];

NSString* checkIfFileExists = [file stringByAppendingPathComponent:_fileName];

NSFileManager *fileManager = [NSFileManager defaultManager];
[fileManager removeItemAtPath:checkIfFileExists error:NULL];
于 2013-01-04T09:09:54.367 に答える
1
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectoryPath = [[paths objectAtIndex:0] stringByAppendingString:@"/Podcasts"];
NSString* checkIfFileExists = [documentsDirectoryPath stringByAppendingPathComponent:_fileName];
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL isMyFileThere = [[NSFileManager defaultManager] fileExistsAtPath:checkIfFileExists];
if(isMyFileThere){

          [fileManager removeItemAtPath:checkIfFileExists error:NULL];
}
else{
          //file dont exists
}
于 2013-01-04T09:25:42.863 に答える