多文件输入,带stdin//Argparse4j,Java
我正在尝试使用Argparse4j构建一个命令行实用程序。我需要创建一个选项,该选项接受多个输入文件,但也接受stdin:多文件输入,带stdin//Argparse4j,Java,java,file,command-line-interface,command-line-arguments,stdin,Java,File,Command Line Interface,Command Line Arguments,Stdin,我正在尝试使用Argparse4j构建一个命令行实用程序。我需要创建一个选项,该选项接受多个输入文件,但也接受stdin: subparser.addArgument("input")
subparser.addArgument("input")
.nargs("*")
.setDefault(Arrays.asList("-"))
.type(Arguments.fileType().acceptSystemIn().verifyCanRead());
如果我不使用数组.asList
,那么有时我只会得到一个文件
对象,而不是列表
但是,使用nargs(“*”
也会使列表中出现“-”(作为字符串),而不是实际的文件
对象
是否有人成功地实现了类似的功能?argparse4j不会对
setDefault()
传递的值进行任何转换。因此,您需要将Arrays.asList(新文件(“-”)传递到setDefault()
,以获得所需的效果