如何在Java中读取输入文本文件而不必每次都更改文件名

问题描述 投票:0回答:2

我大约有10个输入文本文件,每个文本文件都有视频参数。我需要运行所有10个输入文件并比较结果。有没有一种方法可以运行程序而无需每次都更改路径中的输入文件名?

public static void main(String[] args) throws IOException {

    File config = new File("C:\\Users\\Dell\\Documents\\DataProcessing\\src\\config6.txt");

    try {
        BufferedReader br = new BufferedReader(new FileReader(config));
        String st;
        while ((st = br.readLine()) != null) {
            String s[] = st.split("\\r?\\n");
            for (int i = 0; i < s.length; i++) {
                arrList.add(s[i]);
            }
        }
        br.close();
    }
    catch (Exception e) {
    }
}

我必须每次都将文件名(如上所示,config6.txt)更改为config4,config5.txt才能运行其他输入文件。有没有更好,更有效的方法?

java filereader
2个回答
0
投票

要解决此问题,请首先从用户输入中读取文件,并验证它是否为有效文件,如果是,则在程序中继续进行。希望这会有所帮助!


0
投票
        List<Integer> replaceNumbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

    String filePath = "C:\\Users\\Dell\\Documents\\DataProcessing\\src\\config0.txt";

    for (int i = 0; i < replaceNumbers.size(); i++) {
        File config = new File(filePath.replace("0", replaceNumbers.get(i).toString()));

        try {
            BufferedReader br = new BufferedReader(new FileReader(config));
            String st;
            while ((st = br.readLine()) != null) {
                String s[] = st.split("\\r?\\n");
                for (int i = 0; i < s.length; i++) {
                    arrList.add(s[i]);
                }
            }
            br.close();
        } catch (Exception e) {
        }

    }

仅替换replaceNumbers字段中的数字

© www.soinside.com 2019 - 2024. All rights reserved.