我正嘗試讀取SDCARD中存在目錄的所有圖像。例如:如果/ mnt/sdcard/album1中有TEST.jpg文件,/ mnt/sdcard/album1/album2中有TEST2.jpg文件,我應該能夠獲得目錄名稱album1和album2。 我已經寫了一個代碼,它以遞歸的方式做到這一點,當文件夾數量少時,但是當目錄數量增加時,循環剛剛出來。android讀取SDCARD中所有包含圖像的目錄
public void getImageFoldes(String filepath){
String albumpath;
File file = new File(filepath);
File[] files = file.listFiles();
for (int fileInList = 0; fileInList < files.length; fileInList++)
{
File filename;
filename =files[fileInList];
if(filename.isHidden()|| filename.toString().startsWith("."))
return;
if (filename.isDirectory()){
albumpath = filename.toString();
String[] split;
String title;
split= albumpath.split("/");
title=split[split.length-1];
result = new thumbnailResults();
result.setTitle(title);
result.setPath(albumpath);
result.setIsLocal(true);
//result.setCreated("05-06-2011");
getImageFoldes(filename.toString());
}
else{
if (files.length !=0)
{
//if File is the image file then store the album name
if ((files[fileInList].toString()).contains(".png")||
(files[fileInList].toString()).contains(".jpg")||
(files[fileInList].toString()).contains(".jpeg")){
if (!results.contains(result)){
result.setUri(Uri.parse(files[fileInList].getPath()));
results.add(result);
myadapter.notifyDataSetChanged();
}
}
}
}
}
}
sahoo:它給我的JPEG文件的確切文件路徑。我需要的只是直到目錄的路徑。假設我有一個文件夾/mnt/sdcard/album1/album2/test.jpg和/mnt/sdcard/album3/test1.jpg,那麼我的結果應該是包含第一個值的字符串的數組列表,其中/ man/sdcard/album1/album2和第二項將是/ mnt/sdcard/album3。爲什麼不搜索DCIM文件夾? – jhon