Swift3 域fileExists始终为true

Swift3 域fileExists始终为true,swift3,realm,Swift3,Realm,我想复制预加载的领域文件,所以我: 已将我的文件复制到名为default.realm的项目导航器。然后检查文件是否存在:: let bundlePath = Bundle.main.path(forResource: "default", ofType: "realm") let destPath = Realm.Configuration.defaultConfiguration.fileURL?.path let fileManager = FileManager.default if fi

我想复制预加载的领域文件,所以我:

已将我的文件复制到名为
default.realm
的项目导航器。然后检查
文件是否存在:

let bundlePath = Bundle.main.path(forResource: "default", ofType: "realm")
let destPath = Realm.Configuration.defaultConfiguration.fileURL?.path
let fileManager = FileManager.default
if fileManager.fileExists(atPath: destPath!) {
    //File exist, do nothing
    print("File exist")
} else {
    do {
        //Copy file from bundle to Realm default path
        try fileManager.copyItem(atPath: bundlePath!, toPath: destPath!)
        print("Copied")
    } catch {
        print("\n",error)
    }
}

它总是返回true,因此我无法复制我的领域文件。

在重置内容和设置(
Simulator>Reset Content And settings…
)之后,我在模拟器中运行了您的代码,它似乎按预期执行


如果您以前在项目中使用过Realm(即测试),它可能会看到旧的
default.Realm
文件。

在重置内容和设置(
模拟器>重置内容和设置…
)后,我在模拟器中运行了您的代码,并且它似乎按预期执行


如果您以前在项目中使用过Realm(即测试),它可能会看到旧的
default.Realm
文件。

我重置了内容和设置,但它仍然返回
文件存在
。realm如何以及在何处创建新的
default.realm
文件?在realm创建默认文件之后,我似乎检查了文件是否存在。我签入
并使用选项完成启动。然后第二个问题是当我几乎没有复制我的领域文件时,
让领域=试试!Realm()
返回空结果…我重置了内容和设置,它仍然返回
文件存在
。realm如何以及在何处创建新的
default.realm
文件?在realm创建默认文件之后,我似乎检查了文件是否存在。我签入
并使用选项完成启动。然后第二个问题是当我几乎没有复制我的领域文件时,
让领域=试试!Realm()
返回空结果…您是否有代码
let Realm=try!Realm()
是否作为视图控制器中的实例变量?视图控制器是在
didfishlaunchwithoptions
之前从情节提要实例化的。请确保并将其修改为
lazy var realm=try!Realm()
,然后从模拟器中删除该应用程序,然后重试。@kishikawakatsumi非常感谢您。所有问题都在
中!你有没有代码
let realm=try!Realm()
是否作为视图控制器中的实例变量?视图控制器是在
didfishlaunchwithoptions
之前从情节提要实例化的。请确保并将其修改为
lazy var realm=try!Realm()
,然后从模拟器中删除该应用程序,然后重试。@kishikawakatsumi非常感谢您。所有问题都在
中!