Ash*_*dav 1 ios ios7 swift swift3
我正在尝试从服务器下载文件内容,在客户端上创建一个文件并将所有内容转移到该文件。我正在将文件保存到本地存储,但是无法保存会引发异常,因为您没有权限保存在文件夹中。尝试了很多事情,但未能做到。我对这个ios编程非常陌生。请帮帮我,谢谢。
下面是我的代码:
let documentsUrl = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first
var fileURL : URL = URL(fileURLWithPath: documentsUrl!.path+filename)
fileURL = URL(fileURLWithPath: documentsUrl!.path+filename+".doc")
let data = NSData(contentsOf: tempLocalUrl)
do {
try data?.write(to: fileURL, options: .atomic)
} catch {
print(error,"helooooooooooooooooo")
}
Run Code Online (Sandbox Code Playgroud)
我已经使用relativepath,absolutestring但仍然没有运气。
这是错误:
错误域= NSCocoaErrorDomain代码= 513“您无权将文件“ DocumentsImport From IE.doc”保存在文件夹“ 0103E60B-478F-475B-A8F2-788534F5D206”中。UserInfo = {NSFilePath = / var / mobile / Containers / Data / Application / 0103E60B-478F-475B-A8F2-788534F5D206 / DocumentsImport from IE.doc,NSUnderlyingError = 0x1076efe90 {Error Domain = NSPOSIXErrorDomain Code = 1“不允许操作”}}
永远不要建立像
documentsUrl!.path+filename+".doc"
Run Code Online (Sandbox Code Playgroud)
不要那样做 您可能会忘记实际执行的路径分隔符。
URL具有专用的API以构建路径
let documentsUrl = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
let fileURL = documentsUrl.appendingPathComponent(filename).appendingPathExtension("doc")
do {
let data = try Data(contentsOf: tempLocalUrl) // not NSData !!
try data.write(to: fileURL, options: .atomic)
} catch {
print(error,"helooooooooooooooooo")
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1266 次 |
| 最近记录: |