如何检查sd卡目录中是否存在文件

时间:2012-07-02 11:02:13

标签: android file android-sdcard

我想检查android sd卡中是否存在给定文件。我正在尝试使用绝对路径创建文件并使用file.exists()进行检查,但它无效。该文件的URL为"file:///mnt/sdcard/book1/page2.html",该文件确实存在。但不知怎的,file.exists()并没有表现出同样的效果。

7 个答案:

答案 0 :(得分:49)

File extStore = Environment.getExternalStorageDirectory();
File myFile = new File(extStore.getAbsolutePath() + "/book1/page2.html");

if(myFile.exists()){
    ...
}

这应该有用。

答案 1 :(得分:7)

试试这样:

File file = new File(Environment.getExternalStorageDirectory() + "/book1/page2.html");
if (file.exists()) {
    /*...*/
}

还要确保你有:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

在您的清单文件中。

答案 2 :(得分:1)

您可以按如下方式检查:

  File file = new File(getExternalCacheDirectory(), "mytextfile.txt" );
  if (file.exists()) {
      //Do action
   }

答案 3 :(得分:0)

File logFile = new File(
        android.os.Environment.getExternalStorageDirectory()
                + "/book1/", "page2.tml");
if (logFile.exists())
    System.out.println("file exists");
else
    System.out.println("file does not exist

答案 4 :(得分:0)

做这样的事情:

File dir = Environment.getExternalStorageDirectory();
File yourFile = new File(dir, "your/file/path");

if(yourFile.exists())
{

}

答案 5 :(得分:0)

String filepath = getFilesDir().getAbsolutePath(); 
String FileName = "Yourfilename" ;
File FileMain = new File(filepath, FileName); 
if (FileMain.exists()){ 
do somthing here                     
}else{}

答案 6 :(得分:0)

File file = new File(path+filename);
if (file.exists())
{
//Do something
}

选中,这将有效