標籤:android style blog http io ar java sp strong
前面說了檔案操作和主介面,接下來說說檔案的過濾和排序,我們都知道在我們的裝置裡,不管是PC還是手機,總有一些我們
看不到的檔案夾,那就是所謂的隱藏檔案,大部分的隱藏檔案,我們是沒有許可權操作的,所有對我們來說沒必要,必須幹掉,
還有就是給檔案清單排序,方面尋找,其實在現在的檔案夾管理裡,不知道大家有沒有發現,就是在介面的最右或者最左邊有
一個從A-Z豎向排列的選項,點擊每個字母,它會跳到以那個字開頭的檔案清單項去,這是比較好用的一款東西,因為APP是之
前寫的,也就沒用到新式的東西了,咱們就說說粗糙的吧
檔案字典排序:
package com.example.util ;/** * 檔案排序處理 * @author Engineer-Jsp * @date 2014.10.27 * */import java.io.File;import java.util.Comparator;public class CustomComparator implements Comparator<File>{@Overridepublic int compare(File pFile1, File pFile2) {/** * 1.先比較檔案夾 (檔案夾在檔案的順序之上)2.以A-Z的字典排序3.比較檔案夾和檔案4.比較檔案和檔案夾 */if (pFile1.isDirectory() && pFile2.isDirectory()) {return pFile1.getName().compareToIgnoreCase(pFile2.getName());} else {if (pFile1.isDirectory() && pFile2.isFile()) {return -1;} else if (pFile1.isFile() && pFile2.isDirectory()) {return 1;} else {return pFile1.getName().compareToIgnoreCase(pFile2.getName());}}}}
過濾隱藏檔案:
package com.example.util ;/** * 過濾隱藏檔案 * @author Engineer-Jsp * @date 2014.10.27 * */import java.io.File;import java.io.FileFilter;import java.io.FilenameFilter;public class CustomFileFilter implements FileFilter {public boolean accept(File dirName) {if(!dirName.getName().startsWith(".")){ return true ;}else{return false;}}}
資料排序:
package com.example.util ;/** * 資料排序 * @author Engineer-Jsp * @date 2014.10.27 * */import java.io.File;import java.util.Arrays;import java.util.Collections;import java.util.List;public class FileSort {public static File[] sortFile(File[] files) {List<File> listfile = Arrays.asList(files);Collections.sort(listfile, new CustomComparator()); //按照指定的規則進行一個排序File[] array = listfile.toArray(new File[listfile.size()]); return array;}}
排序樣本:
檔案的排序和過濾到此就講完了~謝謝
Android 編程之入門開發檔案夾管理器開發檔案的過濾與排序-3