使用Swift在OS X上获取所有可用的文件夹元数据 [英] Getting all available folder metadata on OS X using swift

查看:80
本文介绍了使用Swift在OS X上获取所有可用的文件夹元数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在编写一个swift程序,并且我想使用swift列出给定文件夹的所有元数据.据我了解,我需要NSMetadataItem.

I'm writing a swift program, and I want to list all metadata of a given folder using swift. As I understand, I'll need NSMetadataItem. The reference doc of NSMetadataItem is not very clear to me though, so I'm unable to write a code sample here. How to list all metadata of a folder?

推荐答案

使用文件夹的NSURL初始化NSMetadataItem的新实例:

Initialize a new instance of NSMetadataItem with the folder's NSURL:

let item = NSMetadataItem(URL: folderURL)

然后安全地解开值:

if let item = item,
        attributes = item.valuesForAttributes(item.attributes) {
    print(attributes)
}

此处attributes是文件夹元数据属性的[String : AnyObject]词典,例如:

Here attributes is a [String : AnyObject] dictionary of the folder metadata attributes, like:

["_ kTimeMachineIsCreationMarker":1,"kMDItemFSCreationDate":2015-03-09 11:49:57 +0000,"_kTimeMachineOldestSnapshot":2016-01-29 14:50:21 +0000,"kMDItemFSNodeCount":4, "kMDItemFSTypeCode":0,"kMDItemFSLabel":0,"kMDItemFSContentChangeDate":2015-05-05 15:24:42 +0000,"kMDItemFSOwnerGroupID":20,"kMDItemFSFinderFlags":0,"kMDItemFSFinderFlags":共享游乐场数据,"kMDItemContentCreationDate:2015-03-09 11:49:57 +0000,"kMDItemKind":档案,"kMDItemFSIsExtensionHidden":0,"_ kTimeMachineNewestSnapshot":4001-01-01 00:00:00 +0000,"kMDItemFSOwnerUserID":501 ,"kMDItemFSInvisible":0,"kMDItemContentTypeTree":< __ NSArrayI 0x7f9fdbc05b70>( 公共文件夹, public.directory, 公共项目 ) ,"kMDItemContentModificationDate":2015-05-05 15:24:42 +0000,"kMDItemContentType":public.folder,"kMDItemDateAdded":2015-03-09 11:49:57 +0000,"kMDItemDisplayName":共享游乐场数据,"kMDItemFSCreatorCode":0]

["_kTimeMachineIsCreationMarker": 1, "kMDItemFSCreationDate": 2015-03-09 11:49:57 +0000, "_kTimeMachineOldestSnapshot": 2016-01-29 14:50:21 +0000, "kMDItemFSNodeCount": 4, "kMDItemFSTypeCode": 0, "kMDItemFSLabel": 0, "kMDItemFSContentChangeDate": 2015-05-05 15:24:42 +0000, "kMDItemFSOwnerGroupID": 20, "kMDItemFSFinderFlags": 0, "kMDItemFSName": Shared Playground Data, "kMDItemContentCreationDate": 2015-03-09 11:49:57 +0000, "kMDItemKind": Dossier, "kMDItemFSIsExtensionHidden": 0, "_kTimeMachineNewestSnapshot": 4001-01-01 00:00:00 +0000, "kMDItemFSOwnerUserID": 501, "kMDItemFSInvisible": 0, "kMDItemContentTypeTree": <__NSArrayI 0x7f9fdbc05b70>( public.folder, public.directory, public.item ) , "kMDItemContentModificationDate": 2015-05-05 15:24:42 +0000, "kMDItemContentType": public.folder, "kMDItemDateAdded": 2015-03-09 11:49:57 +0000, "kMDItemDisplayName": Shared Playground Data, "kMDItemFSCreatorCode": 0]

这篇关于使用Swift在OS X上获取所有可用的文件夹元数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆