只需通过声明它们的总和和处理延迟来从args读取输入文件

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

这对我来说是一个棘手的问题,因为我没有再试过它。

所以我试图将特定数量的输入文本文件导入到我的程序中并指定延迟。 让我解释:

java -jar program.jar 5 10  

这只是一个例子,因为数字可以变化。 在这个例子中,我想读取5个输入文件,然后在10秒后将每个文件传递给一个方法。

每个输入文件都将命名为:input [1 ... n] .txt input1.txt传递给一个做一些东西的方法然后在10秒后输入input2.txt。

我不知道该怎么做。我知道我必须在文件目录中查找args [0]文件,但是如何查找input1.txt?

public static void main(String[] args) {
        int fileNumber = args[0];
        int delay = args[1]
        Q2fix ks = new Q2fix(args[0]);
        ks.fill();

}
java loops input args
1个回答
3
投票

您可以使用循环来检查每个编号的文件:

public static void main(String[] args) {
    int fileNumber = Integer.parseInt(args[0]);
    int delay = Integer.parseInt(args[1]);

    for (int i=1; i <= fileNumber; ++i) {
        String filename = "/some/path/to/input" + i + ".txt";
        Q2fix ks = new Q2fix(filename);
        ks.fill();
        Thread.sleep(delay);
    }
}

我在这里假设你的delay已经是毫秒。如果它在几秒钟内,那么在调用Thread#sleep之前你想要除以1000。并且Thread#sleep告诉当前线程要睡一段时间。

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