我用以下代码将文件保存在swift 3的文档目录中:
fileManager = FileManager.default
// let documentDirectory = fileManager?.urls(for: .documentDirectory, in: .userDomainMask).first as String
var path = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as String
path = path + name
let image = #imageLiteral(resourceName: "Notifications")
let imageData = UIImageJPEGRepresentation(image, 0.5)
let bool = fileManager?.createFile(atPath: path, contents: imageData, attributes: nil)
print("bool is \(bool)")
return true
但是正如您所看到的,我没有使用filemanager
来获取文档目录路径,因为filemanager
只提供URL而不是字符串。
问题:
- 如何从文件管理器中获取字符串?
- 我的代码有可能崩溃吗?
4条答案
按热度按时间nqwrtyyt1#
请从另一个Angular 考虑。
URL
是处理文件路径的推荐方法,因为它包含了所有附加和删除路径组件和扩展名的方便方法-而不是苹果已经删除了这些方法的String
。不建议您连接像
path = path + name
这样的路径,因为您要负责所有的斜杠路径分隔符,所以这很容易出错。此外,您不需要使用
FileManager
创建文件。Data
有一个将数据写入磁盘的方法。或者,创建函数
throw
并将错误移交给调用方mzsu5hc02#
按照vadian给出的上述示例,在文档目录中保存(数据)文件所需的唯一行是:
尝试图像数据.写入(到:文件URL)
获取文件路径是有趣的部分
例如:创建文件路径
调用函数:
euoag5mw3#
我使用下面的方法创建“Test.txt”文件。希望它能帮助你。
nwo49xxi4#