如何删除一个已经存在的文件

时间:2018-07-23 05:21:59

标签: c# unity3d

我目前有我的程序在开始时创建一个XML文件,我希望它在最后删除文件,但是我什么也不会删除。我一直在使用

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

然后刷新,但文件不会删除。

有人有什么可以帮助我的吗?

1 个答案:

答案 0 :(得分:2)

使用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();