2017-04-18 66 views
-1
private String getFilename() { 
      String filepath = Environment.getExternalStorageDirectory().getPath(); 
      File file = new File(filepath, AUDIO_RECORDER_FOLDER); 
      if (!file.exists()) { 
       file.mkdirs(); 
      } 
      return (file.getAbsolutePath() + "/" + System.currentTimeMillis() + file_exts[currentFormat]); 
     } 

我可以通過名稱列出我的錄製文件。 這是我的代碼,我正在獲取我錄製的文件列表,但我沒有得到它的名字。 我已經嘗試按名稱獲取它,但它始終與文件夾名稱一起出現,整個列表在每個記錄器項目中都顯示文件夾名稱。如何從列表視圖中的SD卡文件夾中獲取文件

這有助於獲取數據。

final String MEDIA_PATH = new String("/sdcard/Recording/"); 
private ArrayList<HashMap<String, String>> songsList = new ArrayList<HashMap<String, String>>(); 

public Activity_Song() { 

} 

public ArrayList<HashMap<String, String>> getPlayList() { 
    File file = new File(MEDIA_PATH); 
    if (file.listFiles(new FileExtensionFilter()).length > 0) { 
     for (File file1 : file.listFiles(new FileExtensionFilter())) { 
      HashMap<String, String> song = new HashMap<String, String>(); 
      song.put("songTitle", file.getName().substring(0, (file.getName().length() - 4))); 
      song.put("songPath", file.getPath()); 

      // Adding each song to SongList 
      songsList.add(song); 
     } 
    } 
    return songsList; 
} 

class FileExtensionFilter implements FilenameFilter { 
    public boolean accept(File dir, String name) { 
     return (name.endsWith(".mp3") || name.endsWith(".MP3")); 
    } 
} 

回答

1

如果你想只是文件名應該使用file.getName()代替file.getAbsolutePath()

+0

請查看本 –

相關問題