Fre*_*Lee 6 nsurl writetofile swift
将.txt文件组件附加到URL路径不起作用:
var error:NSError?
let manager = NSFileManager.defaultManager()
let docURL = manager.URLForDirectory(.DocumentDirectory, inDomain:.UserDomainMask, appropriateForURL:nil, create:true, error:&error)
docURL.URLByAppendingPathComponent("/RicFile.txt") <-- doesn't work
Run Code Online (Sandbox Code Playgroud)
通过调试器:
file:///Users/Ric/Library/Developer/CoreSimulator/Devices/
<device id>/data/Containers/Data/Application/<app id>/Documents/
Run Code Online (Sandbox Code Playgroud)
使用docURL将字符串写入文件不起作用,因为缺少文件名.
原因(通过错误):
"操作无法完成.是一个目录"
所以问题:为什么以下不起作用?
docURL.URLByAppendingPathComponent("/RicFile.txt")
Run Code Online (Sandbox Code Playgroud)
Ber*_*ter 19
URLByAppendingPathComponent:不会改变现有的NSURL,它会创建一个新的.从文档:
URLByAppendingPathComponent:返回通过将路径组件附加到原始URL而创建的新URL.
您需要将方法的返回值赋给某些东西.例如:
let directoryURL = manager.URLForDirectory(.DocumentDirectory, inDomain:.UserDomainMask, appropriateForURL:nil, create:true, error:&error)
let docURL = directoryURL.URLByAppendingPathComponent("/RicFile.txt")
Run Code Online (Sandbox Code Playgroud)
更好的是使用NSURL(string:String, relativeTo:NSURL):
let docURL = NSURL(string:"RicFile.txt", relativeTo:directoryURL)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12518 次 |
| 最近记录: |