在斯威夫特创建文件夹

问题描述 投票:4回答:3

我是新来的迅速和我不知道如何从一个字符串路径中的新文件夹(或从某种File/ NSFile的对象)

这是与可可OS X。

macos swift
3个回答
10
投票

我的理解是,你正试图以编程方式创建一个目录使用快捷。下面给出的代码不一样的。

    var err: NSErrorPointer = nil
    let manager = NSFileManager.defaultManager()
    manager.createDirectoryAtPath("/Users/abc/Desktop/swiftDir", withIntermediateDirectories: true, attributes: nil, error: err)

6
投票

Xcode中8•斯威夫特3

extension FileManager.SearchPathDirectory {
    func createSubFolder(named: String, withIntermediateDirectories: Bool = false) -> Bool {
        guard let url = FileManager.default.urls(for: self, in: .userDomainMask).first else { return false }
        do {
            try FileManager.default.createDirectory(at: url.appendingPathComponent(named), withIntermediateDirectories: withIntermediateDirectories, attributes: nil)
            return true
        } catch {
            print(error)
            return false
        }
    }
}

用法:

if FileManager.SearchPathDirectory.desktopDirectory.createSubFolder(named: "untitled folder") {
    print("folder successfully created")
}

SearchPathDirectory


4
投票

在雨燕2.0,你必须使用错误处理的新风格:

let path: String = "/Users/abc/Desktop/swiftDir"
let fileManager = NSFileManager.defaultManager()
do
{
    try fileManager.createDirectoryAtPath(path, withIntermediateDirectories: true, attributes: nil)
}
catch let error as NSError
{
    print("Error while creating a folder.")
}
© www.soinside.com 2019 - 2024. All rights reserved.