如何删除已存在于统一中的文件



我目前让我的程序在启动时创建一个XML文件,我希望它在最后删除该文件,但我所做的一切都不会删除该文件。我一直在使用

File.Delete (Application.dataPath + "File.xml");

然后刷新,但文件没有删除。

有人能帮我什么吗?

使用File.Delete从编辑器中删除文件时,必须调用AssetDatabase.Refresh()才能导入任何更改的资产。这可能就是问题所在。


如果你已经这样做了,但文件仍然在那里,你可能删除了错误的文件。Application.dataPath路径指向<ProjectName>/Assets目录,因此您的File.xml文件应位于<ProjectName>/Assets中才能进行删除。


最后,在编辑器中删除文件时,我建议您使用UnityEditor命名空间中的FileUtil.DeleteFileOrDirectory,而不是File.Delete,然后用AssetDatabase.Refresh()刷新它。它是专门为在编辑器中用于删除文件和目录而设计的。

string path = System.IO.Path.Combine(Application.dataPath, "File.xml");
UnityEditor.FileUtil.DeleteFileOrDirectory(path);
AssetDatabase.Refresh();

最新更新