Cocoa Swift, verstecktes Flag für Dateien und Verzeichnisse holen / setzen

Ich möchte testen, ob eine Datei oder ein Verzeichnis im Dateisystem ein bestimmtes Flag hat, in diesem Fall das "versteckte" Flag, und es dann setzen oder entfernen. Ich weiß, dass dies über die Befehlszeile möglich ist, aber ich habe mich gefragt, ob ich es mit Cocoa / Swift machen kan

Ich habe versucht mitNSFileManager attributesOfItemAtPath, aber das zurückgegebene Objekt enthält keine Flags.

Beispiel

let fm = NSFileManager.defaultManager()

do {
    let testLibrary = try fm.attributesOfItemAtPath(dataPath)
    print (testLibrary)
} catch let error as NSError {
    print("JSON Error: \(error.localizedDescription)")
}

kehrt zurück

["NSFileCreationDate": 2013-08-16 21:37:57 +0000,
 "NSFileGroupOwnerAccountName": staff, 
 "NSFileType": NSFileTypeDirectory, 
 "NSFileSystemNumber": 16777220, 
 "NSFileOwnerAccountName": xjx, 
 "NSFileReferenceCount": 61, 
 "NSFileModificationDate": 2015-10-22 07:25:12 +0000, 
 "NSFileExtensionHidden": 0, 
 "NSFileSize": 2074,
 "NSFileGroupOwnerAccountID": 20, 
 "NSFileOwnerAccountID": 501, 
 "NSFilePosixPermissions": 448, 
 "NSFileSystemFileNumber": 603923]

Zum Vergleich, wenn ichls -lO In meinem Ausgangsverzeichnis wird Folgendes angezeigt (beachten Sie die verborgene Markierung unter "Bibliothek"):

drwx------+ 49 xjx  staff  -        1666 Jan 11 19:43 Downloads
drwx------@ 28 xjx  staff  -         952 Jan 11 08:40 Dropbox
drwx------@ 61 xjx  staff  hidden   2074 Oct 22 09:25 Library
drwx------+  7 xjx  staff  -         238 Apr 30  2015 Movies
drwx------+  5 xjx  staff  -         170 Jun 14  2015 Music

Antworten auf die Frage(6)

Ihre Antwort auf die Frage