java

import java.io.*;
import java.util.Scanner;

public class Main {
    static int num=0;
    public static void main(String[] args) throws InterruptedException {
        Scanner input=new Scanner(System.in);
        String st = input.nextLine();//获取信息
        //路径   这里写一个路径进去
        String path=st;//"E:\\code\\java\\笔记";
        //调用方法
        getFiles(path);
        System.out.println("文件总行数:"+num);
        Thread.sleep(1000*20000);
    }

    /**
     * 递归获取某路径下的所有文件,文件夹,并输出
     */

    public static void getFiles(String path) {

        File file = new File(path);
        // 如果这个路径是文件夹
        if (file.isDirectory()) {
            // 获取路径下的所有文件
            File[] files = file.listFiles();
            for (int i = 0; i < files.length; i++) {
                // 如果还是文件夹 递归获取里面的文件 文件夹
                if (files[i].isDirectory()) {
                    System.out.println("目录:" + files[i].getPath());
                    getFiles(files[i].getPath());
                } else {
                    String path1 = files[i].getPath();//文件全路径
                    int i1 = readFile(path1);
                    num=num+i1;
                    System.out.println("文件:" + path1);
                    System.out.println("文件的行数"+i1);
                }

            }
        } else {
            System.out.println("文件:" + file.getPath());
        }

    }
    public static int readFile(String fileName)
    {
        FileReader fr = null;
        BufferedReader br = null;

        int count = 0;

        try
        {
            fr = new FileReader(fileName);
            br = new BufferedReader(fr);

            String value = br.readLine();
            while (value != null)
            {
                if (!"".equals(value))
                {
                    count++;
                }
                value = br.readLine();
            }
        }
        catch (FileNotFoundException e)
        {
            e.printStackTrace();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        finally
        {
            try
            {
                if (br != null)
                    br.close();
                if (fr != null)
                    fr.close();
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
        }

        return count;
    }
}
Last modification:April 21, 2022
如果觉得我的文章对你有用,请随意赞赏