Используйте swift и macOS для установки атрибутов файла

macOS, swift3
У Apple есть API Foundation > FileManager > setAttributes(_:ofItemAtPath:)

Декларация func setAttributes(_ attribute: [FileAttributeKey: Any], ofItemAtPath path: String) throws

Это для установки даты создания и т. д. для файла. Я могу справиться с бросками >ofItem path:String)‹, но первая часть поставила меня в тупик.

API говорит, что он может вернуть «истину», но Swift возвращает пустоту. Существует атрибут с именем 'creationDate'. Каково значение знака подчеркивания "_".
Я думаю, что "атрибуты" – это изменяемый словарь.

 var myAttributesDictionary = [FileAttributeKey : Date]()
 myAttributesDictionary[FileAttributeKey.creationDate] = myDateObject

let fm = FileManger()
let xxx = fm.setAttributes(myAttributesDictionary:[FileAttributeKey : creationDate], ofItemAtPath myPath)

Я пробовал много вариантов, и теперь я в тупике, и я не знаю, что требуется. Я не могу получить строку setAttributes для компиляции


person jon    schedule 12.03.2017    source источник


Ответы (1)


Я потратил некоторое время на поиск ответа, прежде чем опубликовать вопрос. Когда я искал свой вопрос, я нашел ответ.

let mypath = "/path/to/file"
let myDateObject = NSDate()       // NSDate()  is todays date

let attributes = [FileAttributeKey.creationDate: myDateObject]

 do {
        try FileManager.default.setAttributes(attributes, ofItemAtPath: myPath)
  } 
  catch 
  {
        print(error)
  }
person jon    schedule 12.03.2017