【发布时间】:2018-08-03 12:35:34
【问题描述】:
我有以下代码:
document?.open { success in
if success {
print("file opened")
self.consumed = self.document?.consumed
} else {
print("file read failure")
}
}
可以看出,我有一个成功和失败的打印。但都没有打印出来。
合理的问题是文件不存在,不可读或其他什么。因此,我在这段代码之前添加了以下内容:
if document != nil {
print("not nil")
let asString = document?.fileURL.path
let toast = FileManager.default.fileExists(atPath: asString!)
if toast {
print("file exist")
} else {
print("file does not exist")
}
} else {
print("nil")
}
if FileManager.default.isReadableFile(atPath: (document?.fileURL.path)!)
{
print("readable")
}
else
{
print("not readable")
}
这对我来说表明它是:不为零,存在且可读。
有时我会错过不执行此完成代码吗?能够打开文件会很棒,但我认为它没有运行的事实是第一步。
关于文件的注意事项。它是从包中读取并复制到 Documents 目录的文件。我查看了文件的属性,并没有发现任何异常。
【问题讨论】:
-
方法
open可能有问题。 -
要么你的
document是实际上nil要么你正在使用一个不能被认为是可靠的beta SDK,因为它是测试版. -
但我的测试证明它不是零。
-
如果
document是nil,则代码可靠地崩溃。 -
还有一个问题。会不会是副本的问题?我一直在寻找一些版本以确保文件可用。这在 Swift 中似乎没有必要。无论如何,我怀疑副本没有完成或以某种方式损坏了文件。然而,到目前为止,对属性的评估一无所获,
标签: swift uidocument