在Unity中如何检查文件是否存在?

时间:2017-03-13 18:04:11

标签: android file unity3d file-handling file-exists

我想在已知的路径中找到该文件,如果它在android中预先存在,则用它触发事件(启用/禁用画布)。这是我使用的一个例子 -

public void FileChk(){

    string filePath = "file://" + Application.temporaryCachePath + "/" + "folder23" + "/" + fileName;

    if (!fileName.Exists)
    {
        //event
    }   
    else
    {       
        //event     
    }
}

我在这里做错了什么以及如何在文件存在时触发此事件。

3 个答案:

答案 0 :(得分:5)

您可以使用System.IO命名空间。

public void FileChk()
{
    string filePath = "file://" + Application.temporaryCachePath + "/" + "folder23" + "/" + fileName;

    if (System.IO.File.Exists(filePath))
    {
        // The file exists -> run event
    }
    else
    {
        // The file does not exist -> run event
    }
}

方法bool System.IO.File.Exists(string fileName)返回一个值,指示文件是否存在。

答案 1 :(得分:1)

File f = new File(this.context.getFilesDir(), "catalogAsset" + this.pk + ".jpeg");

if (f.exists()){
  //EXISTS TODO SOMETHING.
} else {
  //NOT EXISTS TODO SOMETHING.
}

答案 2 :(得分:0)

首先确保在脚本开头导入 System.IO; ,然后确保不要编写如下代码:

if (!Directory.Exists(Application.persistentDataPath) + "filename.extention") {}

相反,请确保编写这样的代码(在您的情况下,您要检查文件):

if (!File.Exists(Application.persistentDataPath + "/filename.extention")) {}

请记住:
Directory.Exists 检查文件夹, File.Exists 检查文件。