2016-06-12 20 views
0

Ich möchte eine Datei von einem Ordner in einen anderen Ordner verwendetDateien in Cocoa

I

bewegen
[[NSFileManager defaultManager]moveItemAtPath:@"Folder/Filename.fileExtension" toPath:@"FolderToMoveTheFile" error:nil]; 

Gibt es etwas anderes Fehler eingeben:?

Warum ist es nicht meine Datei verschieben?

Antwort

3

Sie würden die Fehler erhalten, indem dies zu tun:

NSError* error; 
if (![[NSFileManager defaultManager]moveItemAtPath:@"Folder/Filename.fileExtension" toPath:@"FolderToMoveTheFile" error:&error]) 
{ 
    // handle error, typically using the NSError object pointed to by the error variable 
    // In an app, you might want to pass it to a -presentError:... method of a convenient responder 
    // This is good enough for debugging: 
    NSLog(@"failed to move file: %@", error); 
} 

Der zweite Weg, der nach toPath: geht am Zieleinschließlich dem Dateinamen der Pfad sein muss. Es ist nicht korrekt, nur den Pfad zu dem Verzeichnis anzugeben, in das Sie die Datei verschieben möchten.

Außerdem sollten Sie in der Regel absolute Pfade verwenden, keine relativen Pfade. Sie können relative Pfade verwenden, dies hängt jedoch vom aktuellen Arbeitsverzeichnis für den Prozess ab. Dies ist für Apps, die aus dem Finder oder Dock gestartet werden, beliebig. Es ist wirklich nur sinnvoll für Befehlszeilentools, die von einer Shell (z. B. einem Terminal-Fenster) gestartet werden, bei der der Benutzer möglicherweise von cd in ein Verzeichnis erwartet wird und dann relative Pfade als Befehlszeilenargumente bereitstellt.

+0

Wirklich danke. Das Problem war nicht der Fehler, aber ich habe den Dateinamen nicht im Zielpfad angegeben. –