public static void main(String[] args) throws FileNotFoundException {
File inputFile = null;
File outputFile = null;
if (args.length > 0) {
String inputName = args[0];
String outputName = args[1];
inputFile = new File(inputName);
outputFile = new File(outputName);
}else{
Scanner input = new Scanner(System.in);
inputFile = new File(input.next());
outputFile = new File(input.next());
}
}
这是我的代码,应该检查命令行参数中的文件名,但是如果没有,它将让用户键入名称。但是我如何获取它以抛出未找到的文件异常?我感谢您的帮助
答案 0 :(得分:0)
最好使用java.nio.file.Path
,而不是较旧的File
类。 java.nio.file.Files
有很多Paths
的实用方法。
您可以检查文件是否存在,然后抛出自己的FileNotFoundException
:
Path path = Path.of(filename);
if (!Files.exists(path)) throw new FileNotFoundException(path.toString());
或者,您可以生成一个NoSuchFileException
:
path.getFileSystem().provider().checkAccess(path);