java.io.FileNotFoundException:

java.io.FileNotFoundException:,java,java-io,Java,Java Io,我试图使用Java将单个文件从源复制到目标,但收到以下错误消息 java.io.FileNotFoundException:以下是方法 public void copy_single(String source,String dest,String filename) { try { System.out.println(source + "" + filename); System.out.println(dest + "" + filename); File inpu

我试图使用Java将单个文件从源复制到目标,但收到以下错误消息

java.io.FileNotFoundException:
以下是方法

public void copy_single(String source,String dest,String filename)
{
  try
  { System.out.println(source + "" + filename);
    System.out.println(dest + "" + filename);
    File inputFile = new File(source+""+filename);
    File outputFile = new File(dest+""+filename);
    Process proc0 = Runtime.getRuntime().exec("chmod -R 777 "+inputFile+"");
    proc0.waitFor();
    Process proc1 = Runtime.getRuntime().exec("chmod -R 777 "+outputFile+"");
    proc1.waitFor();
    FileReader in = new FileReader(inputFile);
    FileWriter out = new FileWriter(outputFile);
    int c;
    while ((c = in.read()) != -1)
      out.write(c);
    in.close();
    out.close();
  } catch(Exception e) {
    e.printStackTrace();
    System.out.println("Error: Operation failed!");
  }
}
输出:-

/home/root/Tool/AAputDelta.sh
/home/root/Desktop/Sqa/BaseLine/Engine/AAputDelta.sh
java.io.FileNotFoundException: /home/root/Desktop/Sqa/BaseLine/Engine/AAputDelta.sh (No such file or directory)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:194)
at java.io.FileOutputStream.<init>(FileOutputStream.java:145)
/home/root/Tool/AAputDelta.sh
/home/root/Desktop/Sqa/BaseLine/Engine/AAputDelta.sh
java.io.FileNotFoundException:/home/root/Desktop/Sqa/BaseLine/Engine/AAputDelta.sh(没有这样的文件或目录)
在java.io.FileOutputStream.open(本机方法)
位于java.io.FileOutputStream。(FileOutputStream.java:194)
位于java.io.FileOutputStream。(FileOutputStream.java:145)

如何使用java复制简单文件。

使用apache commons FileUtils。所有这些都应该足够了

FileUtils.copyFile(File srcFile, File destFile) 
FileUtils.copyFile(File srcFile, File destFile, boolean preserveFileDate) 
FileUtils.copyFileToDirectory(File srcFile, File destDir) 
FileUtils.copyFileToDirectory(File srcFile, File destDir, boolean preserveFileDate) 

怀疑部分或全部
dest
输出路径可能不存在。如果是这种情况,您可以使用它来构建路径

此外,建议允许处理所有这些,而不是从字符串构建文件,例如:

File inputFile = new File(source, filename);
File outputFile = new File(dest, filename);

您可以使用commons io中的FileUtils:

或来自Java 7的文件:
java.io.FileNotFoundException意味着找不到某些文件,因此请检查以下值:

  • 来源
  • 目的地
  • 文件名
  • 源+“”+文件名
  • dest+“”+文件名
    • 也许您需要添加

      File outputFile = new File(dest+""+filename);
      if(!outputFile.exist())outputFile.createNewFile();
      

      如果文件不存在,文件系统将尝试创建该文件。如果创建失败,Java将抛出
      FileNotFountException

      是否打印并看到source+“”+fileName返回文件的完整路径?请告诉我们引发异常的源代码行。这意味着outputFile的文件路径不存在。1。对于未来的问题:在这里发布之前,您能格式化您的代码吗?2.请向我们提供您得到的全部例外情况(或至少前几行)(复制和粘贴)。3.对于这种特殊情况:可以执行
      System.out.println(dest+“”+文件名)
      在方法的开头,并告诉我们结果?@brimborium No.new FileOutputStream()会在必要时创建该文件。请参阅Javadoc。你不必自己去做,apaches commons库中总有一个方法可以做到这一点。如果他们有一个
      HumanUtils.serverUserSomeCoffe(列出配料)
      ,我不会感到惊讶如果新的FileOutputStream()无法创建该文件,这也将不起作用。没有答案。