gpt4 book ai didi

java - 如果不存在,则复制到现有文件时抛出错误

转载 作者:行者123 更新时间:2023-12-03 08:48:11 24 4
gpt4 key购买 nike

我正在尝试编写一种方法,该方法接受一个文件,并将其复制到另一个文件中。如果目标文件不存在,这应该抛出一个错误。我的代码在这里。

    public static void takeAndCopyFile(String sourceFile, String destinationFile) throws FileNotFoundException, IOException{
FileInputStream fin = new FileInputStream(sourceFile);
FileOutputStream fout = new FileOutputStream(destinationFile);

try {
File inFile = new File(sourceFile);
File outFile = new File(destinationFile);

byte[] buffer = new byte[1024];
int length;
if (outFile.exists()){

while ((length = fin.read(buffer)) > 0 ) {
fout.write(buffer,0,length);
}
}
}catch (FileNotFoundException e){
System.out.println("File not found!");
e.printStackTrace();

} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
fout.close();
fin.close();
}

让我感到困惑的是,如果我传递了不存在的文件名,而if语句应该明显为假,那么它应该继续FileNotFoundException。

谢谢。

最佳答案

如果不满足if条件,则不会引发任何异常,不会执行if语句的主体。

如果要在这种情况下引发异常,则必须明确地执行此操作,例如:

if(outFile.exists()){
...
}else{
throw new FileNotFoundException();
}

关于java - 如果不存在,则复制到现有文件时抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48698378/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com