黑马程序员技术交流社区

标题: File类递归 [打印本页]

作者: Jarc    时间: 2016-9-13 14:20
标题: File类递归
键盘接受一个文件夹路径,统计文件夹大小。求解释原理
作者: EdwardWuang    时间: 2016-9-13 20:46
从键盘接收一个文件夹路径,统计该文件夹大小
        (a)定义一个代表文件夹大小的long类型变量sum(名字自己起,此处仅是示例)。
        (b)定义一个Scanner对象,使用nextLine从控制台获取输入的路径所对应的String对象。
        (c)定义一个File对象 f,指向该String对象所代表的路径。
        (d)定义一个方法getLength(File file),将f传入该方法中。

        (e)使用listFiles()方法获取到该文件夹路径下的所有的文件和文件夹,存储在File数组中。
        (f)遍历数组,对每一个文件或文件夹做判断。
        (g)如果是文件,就调用length()方法获取该文件的大小,并与旧sum相加得到新sum。
        (h)如果是文件夹,就递归调用getLength()方法,将此文件夹的File对象传入getLength()方法中。
        (i)循环结束,打印总和,即为该文件夹大小,过程结束。
作者: 灵动    时间: 2016-9-13 22:46
递归计算出每个文件的大小用length   然后递归相加




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2