[javaSE] IO流(FIle对象递归文件列表)
Posted 陶士涵的菜地
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[javaSE] IO流(FIle对象递归文件列表)相关的知识,希望对你有一定的参考价值。
获取File对象,new出来,构造参数:String目录名
调用File对象的list()方法,获取String[]数组文件名称
循环数组,列出所有文件包含隐藏文件
递归列出所有的数据
定义一个静态方法showDir(),传递进参数:FIle对象
调用File对象的listFiles()方法,得到File[]数组
循环File[]数组,每个元素是File对象
循环中,调用File对象的isDirectory()方法,判断是否是一个目录,如果是目录,再次调用showDir()方法,参数:File对象
如果不是打印File对象
import java.io.File; public class FileDemo { /** * @param args */ public static void main(String[] args) { File file = new File("E:/adt-bundle-windows/workspace/IpTest"); showDir(file); } /** * 递归展示文件 * * @param file */ public static void showDir(File file) { System.out.println("目录:" + file); File[] files = file.listFiles(); for (File dir : files) { // 限定条件 if (dir.isDirectory()) { showDir(dir); } else { System.out.println(" 文件:" + dir); } } } }
php版:
<?php class FileDemo{ public static function main(){ FileDemo::showDir("E:/adt-bundle-windows/workspace/IpTest"); } /** * 递归展示文件 * @param file */ public static function showDir($file){ echo "目录:".$file."<br/>"; $dirObj=dir($file); while($files=$dirObj->read()){ //限定条件 if(is_dir($file."/".$files) && $files!="." && $files!=".."){ FileDemo::showDir($file."/".$files); }else{ echo " 文件:".$files."<br/>"; } } } } FileDemo::main();
以上是关于[javaSE] IO流(FIle对象递归文件列表)的主要内容,如果未能解决你的问题,请参考以下文章