【问题标题】:Swift 3 Mac OS Copy Audio File to NSPasteboardSwift 3 Mac OS 将音频文件复制到 NSPasteboard
【发布时间】:2017-03-20 04:20:50
【问题描述】:

我正在尝试将音频文件复制到 NSPasteboard,以便可以将其粘贴到计算机上的其他位置或 Ableton 或 Pro Tools 等其他程序中。这是我获取文件网址的方式。 (转换为字符串后的示例 url d 是:file:///Users/ben/Music/Ableton/User%20Library/Vox.wav)

let url = directoryItems?[tableview.selectedRow].url
let urlString = (url?.absoluteString)! as String

let pb = NSPasteboard.general()
let pasted = pb.writeFileContents(urlString)

它没有被复制到粘贴板(粘贴设置为 false),我找不到任何有关将音频文件写入 NSPasteboard 的资源。任何帮助将不胜感激。

编辑:

我也尝试使用 url 而不是字符串,结果相同

    let pb = NSPasteboard.general()
    let pasted = pb.writeObjects([url as! NSPasteboardWriting])

【问题讨论】:

    标签: swift audio nspasteboard


    【解决方案1】:

    要以可以将其粘贴到 Finder 的方式复制文件,您需要一个文件 URL,而不是字符串。

    至于将音乐复制到音乐编辑器中,想必你需要自己将音乐文件加载成可以粘贴到该编辑器中的某种波形格式。

    【讨论】:

    • 我最近的编辑解决了您对 URL 的建议
    • 嗯,我试过了(我在第一段中说过的话),效果很好。我能够切换到 Finder 并点击编辑 > 粘贴,然后将我放在粘贴板上的文件 URL 的文件复制到当前文件夹。这不是你说的你想要的吗?
    • 顺便说一句,我注意到你忘了说clearContents()
    • 我只是忘记清除内容了,现在好像可以了。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-14
    • 1970-01-01
    • 2018-08-10
    • 2013-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多