iOS - Dateiverwaltung

Die Dateibehandlung kann mit der Anwendung nicht visuell erklärt werden. Daher werden im Folgenden die wichtigsten Methoden für die Handhabung von Dateien erläutert. Beachten Sie, dass das Anwendungspaket nur über Leseberechtigung verfügt und wir die Dateien nicht ändern können. Sie können das Dokumentenverzeichnis Ihrer Anwendung trotzdem ändern.

Methoden für die Dateiverwaltung

Die Methoden für accessing und manipulatingDie Dateien werden unten diskutiert. Hier müssen wir die Zeichenfolgen FilePath1, FilePath2 und FilePath durch unsere erforderlichen vollständigen Dateipfade ersetzen, um die gewünschte Aktion zu erhalten.

Überprüfen Sie, ob eine Datei in einem Pfad vorhanden ist

NSFileManager *fileManager = [NSFileManager defaultManager];

//Get documents directory
NSArray *directoryPaths = NSSearchPathForDirectoriesInDomains
(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectoryPath = [directoryPaths objectAtIndex:0];

if ([fileManager fileExistsAtPath:@""]==YES) {
   NSLog(@"File exists");
}

Vergleichen von zwei Dateiinhalten

if ([fileManager contentsEqualAtPath:@"FilePath1" andPath:@" FilePath2"]) {
   NSLog(@"Same content");
}

Überprüfen Sie, ob es beschreibbar, lesbar und ausführbar ist

if ([fileManager isWritableFileAtPath:@"FilePath"]) {
   NSLog(@"isWritable");
}

if ([fileManager isReadableFileAtPath:@"FilePath"]) {
   NSLog(@"isReadable");
}

if ( [fileManager isExecutableFileAtPath:@"FilePath"]) {
   NSLog(@"is Executable");
}

Datei bewegen

if([fileManager moveItemAtPath:@"FilePath1" 
   toPath:@"FilePath2" error:NULL]) {
   NSLog(@"Moved successfully");
}

Datei kopieren

if ([fileManager copyItemAtPath:@"FilePath1" 
   toPath:@"FilePath2"  error:NULL]) {
   NSLog(@"Copied successfully");
}

Datei löschen

if ([fileManager removeItemAtPath:@"FilePath" error:NULL]) {
   NSLog(@"Removed successfully");
}

Datei lesen

NSData *data = [fileManager contentsAtPath:@"Path"];

Datei schreiben

[fileManager createFileAtPath:@"" contents:data attributes:nil];