这是我将文件夹从包复制到库的代码。
let library = FileManager.default.urls(for: .libraryDirectory, in: .userDomainMask)[0]
let bundle = Bundle.main.path(forResource: "MYFOLDER", ofType: "")!
let fileManager = FileManager.default
do
{
try fileManager.copyItem(atPath: bundle, toPath: library.path)
print("NO CATCH")
}
catch
{
print(error)
}
我收到这个错误:
Error Domain=NSCocoaErrorDomain Code=516 "“MYFOLDER” couldn’t be copied to “CBE6D212-8827-423B-AEC8-6830EED0EC5C” because an item with the same name already exists." UserInfo={NSSourceFilePathErrorKey=/Users/Joshua/Library/Developer/CoreSimulator/Devices/84EF61E3-6739-47D1-A0AE-1215B89D0CE7/data/Containers/Bundle/Application/C357EB0E-6719-464B-8DC9-513E5E7F83E1/Heffy.app/MYFOLDER, NSUserStringVariant=( Copy ), NSFilePath=/Users/Joshua/Library/Developer/CoreSimulator/Devices/84EF61E3-6739-47D1-A0AE-1215B89D0CE7/data/Containers/Bundle/Application/C357EB0E-6719-464B-8DC9-513E5E7F83E1/Heffy.app/MYFOLDER, NSDestinationFilePath=/Users/Joshua/Library/Developer/CoreSimulator/Devices/84EF61E3-6739-47D1-A0AE-1215B89D0CE7/data/Containers/Data/Application/CBE6D212-8827-423B-AEC8-6830EED0EC5C/Library, NSUnderlyingError=0x797878e0 {Error Domain=NSPOSIXErrorDomain Code=17 "File exists"}}
**但我检查过它不存在于库文件夹中*
最佳答案
根据您的错误,文件已经存在。试试这段代码并检查
let path = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as String
let url = NSURL(fileURLWithPath: path)
let filePath = url.appendingPathComponent("NewFolder")?.path
let fileManager = FileManager.default
if fileManager.fileExists(atPath: filePath!) {
print("FILE AVAILABLE")
} else {
print("FILE NOT AVAILABLE")
}
关于ios - 将文件从 bundle 复制到 Libraries 文件夹(IOS 10、Swift 3、xcode 8.2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41196700/