課程
/后端開發
/Java
/文件傳輸基礎——Java IO流
如果子目錄下沒有文件,為什么連這個子目錄都不會輸出呢?
2015-08-26
源自:文件傳輸基礎——Java IO流 2-2
正在回答
因為老師沒有對空目錄做出來,加一段判斷的就好。
package?imooc.io; import?java.io.File; import?java.io.IOException; //列出File的一些常用操作?比如:過濾、遍歷等操作 public?class?FileUtils?{ /** ?*?列出指定目錄下(包括其子目錄)的所有文件 ?*?@param?file ?*?@throws?IOException ?*/ public?static?void?listDirectoryFile(File?dir)?throws?IOException{ if(!dir.exists()){ throw?new?IllegalArgumentException("目錄"?+?dir?+"不存在"); } if(!dir.isDirectory()){ throw?new?IllegalArgumentException(dir?+?"不是目錄"); } //返回的是字符串數組?不包括子目錄下的文件 /* String[]?filenames?=?dir.list(); for(String?filename?:?filenames){ System.out.println(dir?+?"\\"?+?filename); }*/ //如果要遍歷子目錄下的內容?就需要構造成File對象做遞歸操作 File[]?files?=?dir.listFiles(); if(files?!=?null?&&?files.length?>0){ for(File?file?:?files){ if(file.isDirectory()){ //判斷是否為空目錄,是則打印空目錄的名字,否則則繼續遞歸 String[]?childFiles?=?file.list(); if(childFiles.length?>?0){ //用遞歸?去列出子目錄的所有內容 listDirectoryFile(file); }else{ System.out.println(file); } } else{ System.out.println(file); } } } } }
就要學IT 提問者
可能是因為你的else語句沒有寫在for-each循環里面
舉報
為您介紹IO流的使用,以及對象的序列化和反序列化的內容
5 回答子目錄是空文件夾就不會打印出來?
1 回答關于子目錄下的空文件夾
3 回答如果創建文件的時候輸入的目錄沒有,會報錯的吧
1 回答按照老師的遞歸,卻練本目錄和子目錄都不打印了,只打印文件
2 回答創建目錄及其子目錄后,顯示目錄拒絕訪問
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-11-29
因為老師沒有對空目錄做出來,加一段判斷的就好。
2015-10-03
可能是因為你的else語句沒有寫在for-each循環里面
2015-10-03
可能是因為你的else語句沒有寫在for-each循環里面