Swift - 实现Mac OS下将文件保存到桌面(读写任意路径文件)
作者:hangge | 2018-11-05 08:10
我之前写过一篇文章介绍如何使用 Swift 进行文件、文件夹操作(点击查看)。出于安全限制,如果开发的是 iOS 应用,那么我们只能对沙盒内文件进行操作。如果是 Mac OS 桌面应用的话,则可以读写指定的任意路径文件。下面通过样例进行演示。
(2)运行结果如下:
1,设置沙盒权限
(1)默认情况下,MacOS 应用创建完毕后,对于指定路径的文件只有读取权限,没有写入权限。
(2)我们在项目设置 -> Capabilities 中,将 App Sandbox 设置为 OFF。
2,创建文件样例
(1)下面我们在程序启动后,自动在系统桌面上创建一个文本文件(test.txt)
import Cocoa class ViewController: NSViewController { override func viewDidLoad() { super.viewDidLoad() //在桌面上创建一个文件 let manager = FileManager.default let urlForDocument = manager.urls( for: .desktopDirectory, in:.userDomainMask) let url = urlForDocument[0] createFile(name:"test.txt", fileBaseUrl: url) } //根据文件名和路径创建文件 func createFile(name:String, fileBaseUrl:URL){ let manager = FileManager.default let file = fileBaseUrl.appendingPathComponent(name) print("文件: \(file)") let exist = manager.fileExists(atPath: file.path) if !exist { //在文件中随便写入一些内容 let data = Data(base64Encoded:"aGVsbG8gd29ybGQ=" ,options:.ignoreUnknownCharacters) let createSuccess = manager.createFile(atPath: file.path,contents:data,attributes:nil) print("文件创建结果: \(createSuccess)") } } }
(2)运行结果如下:
全部评论(0)