Android如何遍歷特定目錄下所有文件
更新時間:2016年07月21日 15:06:43 投稿:lijiao
這篇文章主要為大家詳細(xì)介紹了Android如何遍歷特定目錄下所有文件的代碼,供大家參考,感興趣的小伙伴們可以參考一下
第一個案例為大家分享了Android遍歷特定目錄下所有文件,包含子目錄的,并刪除最新創(chuàng)建的。
private boolean deleteLastFromFloder(String path) { boolean success = false; try { ArrayList<File> images = new ArrayList<File>(); getFiles(images, path); File latestSavedImage = images.get(0); if (latestSavedImage.exists()) { for (int i = 1; i < images.size(); i++) { File nextFile = images.get(i); if (nextFile.lastModified() > latestSavedImage.lastModified()) { latestSavedImage = nextFile; } } Log.e("brady", "images = " + latestSavedImage.getAbsolutePath()); success = latestSavedImage.delete(); } } catch (Exception e) { e.printStackTrace(); } return success; } private void getFiles(ArrayList<File> fileList, String path) { File[] allFiles = new File(path).listFiles(); for (int i = 0; i < allFiles.length; i++) { File file = allFiles[i]; if (file.isFile()) { fileList.add(file); } else if (!file.getAbsolutePath().contains(".thumnail")) { getFiles(fileList, file.getAbsolutePath()); } } }
第二個案例介紹了文件夾遍歷Android代碼,供大家參考,具體內(nèi)容如下
package com.once; import java.io.File; import java.util.ArrayList; import java.util.LinkedList; /** * 文件夾遍歷 * @author once * */ public class DirTraversal { //no recursion public static LinkedList<File> listLinkedFiles(String strPath) { LinkedList<File> list = new LinkedList<File>(); File dir = new File(strPath); File file = dir.listFiles(); for (int i = 0; i < file.length; i++) { if (file.isDirectory()) list.add(file); else System.out.println(file.getAbsolutePath()); } File tmp; while (!list.isEmpty()) { tmp = (File) list.removeFirst(); if (tmp.isDirectory()) { file = tmp.listFiles(); if (file == null) continue; for (int i = 0; i < file.length; i++) { if (file.isDirectory()) list.add(file); else System.out.println(file.getAbsolutePath()); } } else { System.out.println(tmp.getAbsolutePath()); } } return list; } //recursion public static ArrayList<File> listFiles(String strPath) { return refreshFileList(strPath); } public static ArrayList<File> refreshFileList(String strPath) { ArrayList<File> filelist = new ArrayList<File>(); File dir = new File(strPath); File files = dir.listFiles(); if (files == null) return null; for (int i = 0; i < files.length; i++) { if (files.isDirectory()) { refreshFileList(files.getAbsolutePath()); } else { if(files.getName().toLowerCase().endsWith("zip")) filelist.add(files); } } return filelist; } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Android編寫文件瀏覽器簡單實現(xiàn)
- Android中調(diào)用系統(tǒng)的文件瀏覽器及自制簡單的文件瀏覽器
- 微信或手機瀏覽器在線顯示office文件(已測試ios、android)
- 讀寫Android中assets目錄下的文件的方法詳解
- Android遍歷所有文件夾和子目錄搜索文件
- 讀取android根目錄下的文件或文件夾實例
- Android 將文件下載到指定目錄的實現(xiàn)代碼
- Android編程實現(xiàn)將壓縮數(shù)據(jù)庫文件拷貝到安裝目錄的方法
- Android開發(fā)實現(xiàn)讀取assets目錄下db文件的方法示例
- Android編程實現(xiàn)簡單文件瀏覽器功能
相關(guān)文章
Android自定義RecyclerView Item頭部懸浮吸頂
這篇文章主要為大家詳細(xì)介紹了Android自定義RecyclerView Item頭部懸浮吸頂,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08Android實現(xiàn)美團(tuán)外賣底部導(dǎo)航欄動畫
這篇文章主要介紹了Android實現(xiàn)美團(tuán)外賣底部導(dǎo)航欄動畫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-11-11Android滑動刪除數(shù)據(jù)功能的實現(xiàn)代碼
這篇文章主要介紹了Android滑動刪除功能2017-01-01