簡體   English   中英

如何從外部sdcard和手機存儲中獲取所有文件(移動存儲內部)?

[英]How to get all files from external sdcard and phone storage (internal with mobile memory)?

我嘗試從移動設備獲取所有文件(外部sdcard和電話存儲設備(移動存儲設備內部))。

我嘗試使用此代碼Environment.getExternalStorageDirectory() 但是從這個我只能得到SD卡文件,而不是手機存儲。

請幫助我如何獲取內存位置路徑或文件。

File file[] = Environment.getExternalStorageDirectory().listFiles();
    recursiveFileFind(file);

public void recursiveFileFind(File[] file1){
int i = 0;
String filePath="";
     if(file1!=null){
    while(i!=file1.length){
        filePath = file1[i].getAbsolutePath();
            if(file1[i].isDirectory()){
                    File file[] = file1[i].listFiles();
            recursiveFileFind(file);
            }
        i++;
        //Log.d(i+"", filePath);
    }
  }
}

如果這不起作用,那么在下面的代碼中,您可以給出外部路徑並

獲取所有文件。

private void getAllFilesOfDir(File directory) {
    Log.d(TAG, "Directory: " + directory.getAbsolutePath() + "\n");

    final File[] files = directory.listFiles();

    if ( files != null ) {
        for ( File file : files ) {
            if ( file != null ) {
                if ( file.isDirectory() ) {  // it is a folder...
                    getAllFilesOfDir(file);
                }
                else {  // it is a file...
                    Log.d(TAG, "File: " + file.getAbsolutePath() + "\n");
                }
            }
        }
    }
}

此代碼將提供內部文件。

    String[] SavedFiles;
    ArrayList<String> arrList;
    SavedFiles = getApplicationContext().fileList();


   arrList = new ArrayList<String>();
   if(SavedFiles != null)
          {
              for(int i=0; i<SavedFiles.length; i++)
              {
                  arrList.add(SavedFiles[i]);
              }


          }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM