2014-02-05 39 views
0

我正在創建一個應用程序,我希望在用戶點擊某個按鈕時放入一個功能我的應用程序掃描整個設備並在列表視圖中顯示可用的.csv文件。 我怎樣才能做到這一點?如何掃描整個Android設備並在列表視圖中顯示可用的.csv文件?

+1

您無法掃描整個設備,只能掃描具有相應權限的文件夾。例如SD卡。 – EarlOfEgo

+0

轉到此[http://stackoverflow.com/questions/7030446/reading-all-files-in-the-android-file-system](http://stackoverflow.com/questions/7030446/reading-all-文件 - 在最Android的文件系統) –

回答

1
// pass the path in method where you want to find .csv file 

    public static File pathDcim = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).getAbsolutePath()); 

public void getFile(pathDcim) 
{ 
     ArrayList<String> csvfile_arraylist = new ArrayList<String>();  

     File dir = new File(path); 
     Log.e("path ", "is " + path); 
     File file[] = dir.listFiles(); 

     try { 
      if (file.length > 0) { 
       for (int i = 0; i < file.length; i++) { 
        if (file[i].isFile()) { 
         int mid =      file[i].getName().lastIndexOf("."); 



    String ext = file[i].getName().substring(mid + 1, 
           file[i].getName().length()); 
         if (ext.equalsIgnoreCase("csv")) 
         { 
          //System.out.println((file[i].getAbsolutePath())); 
          //System.out.println((file[i].lastModified())); 
          csvfile_arraylist.add(file[i].getAbsolutePath()); 

         } 
        } else { 

         if (!file[i].getAbsolutePath().toString().contains("/.")) 
         { 
          getFile(file[i].getAbsolutePath()); 
         } 
         else { 
          Log.e("ignored path-->","-->" + file[i].getAbsolutePath()); 
         } 
        } 
       } 
      } 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } // get images form dcim folder 
相關問題