swift - 使用 URL 显示文件的元数据

标签 swift cocoa interface-builder metadata

我正在构建一个 macOS 应用程序并使用 NSOpenPanel 来访问系统文件结构,这样我就可以访问任何文件并将其导入到我正在制作的应用程序中。我能够获取文件的 URL 和所述 URL 的字符串,但我想知道是否有一种简单的方法可以在 URL 处提取文件的元数据并将其显示在文本字段中?

最佳答案

您可以使用 CoreServices 框架中的 MDItem... 函数:

import Foundation
import CoreServices

let path = someURL.path
if let mditem = MDItemCreate(nil, path as CFString),
   let mdnames = MDItemCopyAttributeNames(mditem),
   let mdattrs = MDItemCopyAttributes(mditem, mdnames) as? [String:Any] {
    print(mdattrs)
    print("Creator: \(mdattrs[kMDItemCreator as String] as? String ?? "Unknown")")
} else {
    print("Can't get attributes for \(path)")
}

有关详细信息,请参阅 File Metadata核心服务框架的一部分。

关于swift - 使用 URL 显示文件的元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52584510/

相关文章:

ios - MapKit - 更改 MKPolyline 的颜色/描边

ios - XCTest中是否可以对最后一个匹配元素进行操作?

swift - 在第二个 View 上显示标签值 - Swift

swift - 在 Swift 中以编程方式更改窗口的背景颜色

ios - 如何在 Interface Builder 中为 3.5” 和 4” Retina 定位 View ?

swift - Google Cast 标签未本地化为设备语言

iphone - 在 iPhone/Cocoa 上复制 OpenSSL smime 命令

swift - 如何禁用 NSView 上的鼠标单击和鼠标拖动?

iphone - 如何在另一个 NIB 的 View 内加载一个 NIB?

ios - 让Universal (iPhone+iPad) app run on iPhone storyboard on iPad (simulated size)