有人問及一個(gè)用java列舉某個(gè)文件夾下所有的文件或者目錄編程題。結(jié)果他不加思索的寫了十幾行代碼,就搞定了,結(jié)果面試官說等通知,直到最后都沒通知他,我猜想出題人的最終想法是看如何封裝代碼,如何靈活使用豐富的API。
專注于為中小企業(yè)提供網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)清水河免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
于是我試著寫一個(gè)可選擇結(jié)果,希望對各位有用:
import java.io.File;
import java.io.FileFilter;
/**
@author leizhimin 2010-3-22 20:58:37
*/
public class FileTest {
public static final byte TYPE_ALL = 0; //所有的文件和文件夾
public static final byte TYPE_FILE = 1; //文件
public static final byte TYPE_DIR = 2; //文件夾
public static void main(String args[]) {
File[] flist = listFile("C:\\", FileTest.TYPE_FILE);
for (File file : flist) {
System.out.println(file.getPath());
}
}
/**
* 列舉文件或者目錄
*
* @param path 操作目錄
* @param type 列舉的類型
* @return 所列舉的文件或文件夾列表
*/
public static File[] listFile(String path, byte type) {
File[] result = null;
File f = new File(path);
switch (type) {
case TYPE_ALL:
result = f.listFiles();
break;
case TYPE_FILE:
result = f.listFiles(new MyFileFilter(true));
break;
case TYPE_DIR:
result = f.listFiles(new MyFileFilter(false));
break;
default:
result = f.listFiles();
}
return result;
}
}
/**
文件過濾器
*/
class MyFileFilter implements FileFilter {
//過濾所要保留的類型是否是文件
private boolean isFile = true;
MyFileFilter(boolean isFile) {
this.isFile = isFile;
}
public boolean accept(File pathname) {
if (isFile) {
if (pathname.isFile()) return true;
return false;
} else {
if (pathname.isDirectory()) return true;
return false;
}
}
}
輸出結(jié)果:
C:\bootfont.bin
C:\ntldr
C:\NTDETECT.COM
C:\CONFIG.SYS
C:\AUTOEXEC.BAT
C:\IO.SYS
C:\MSDOS.SYS
C:\GHLDR
C:\boot.ini
C:\錦衣衛(wèi)TC國語中字修正聲音甄子丹趙薇2010最新動作大片.rmvb
C:\The.Hurt.Locker.2008.拆彈部隊(duì).雙語字幕.HR-HDTV.AC3.1024x544.x264-人人影視.mkv
C:\Linux程序設(shè)計(jì)(第三版)_3of2.rar
C:\Linux程序設(shè)計(jì)(第三版)_3of1.rar
C:\Linux程序設(shè)計(jì)(第三版)_3of3.rar
C:\Linux程序設(shè)計(jì)(第三版)_目錄.rar
C:\4.txt
Process finished with exit code 0
網(wǎng)頁標(biāo)題:面試題求解:用java列舉某個(gè)文件夾下所有的文件或者目錄編程題
網(wǎng)站鏈接:http://aaarwkj.com/article30/pjcjpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、手機(jī)網(wǎng)站建設(shè)、外貿(mào)建站、軟件開發(fā)、、移動網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)