簡體   English   中英

在Java中調用靜態目錄復制方法

[英]Calling static directory-copying method in Java

我嘗試使用以下問題的示例: 如何將一個文件夾及其所有子文件夾和文件復制到另一個文件夾中

我將他設為靜態,當我調用copyDirectory()時,在程序運行期間出現異常:

Exception in thread "AWT-EventQueue-0" java.lang.Error: Unresolved compilation problem: 
Unhandled exception type IOException

在使用此方法的每一行。

我加了

  throws IOException 

對於使用copyDirectory()的每個方法

錯誤的計數已被縮短,但它們仍保留在本機Java類中。 而且我無法編輯它們:這將是無限的編輯遞歸:))

前進對不起英語不好。

UPD :(使用ApacheCommonsIO)

import org.apache.commons.io.FileUtils;
// the rest import
public class MyClass{
  public myMethod(){
   String src = "/home/user/dir_src";
   String dst = "/home/user/dir_dst";
   FileUtils.copyDirectory(new File(src), new File(dst)); 
  }
}

2件事在這里

  1. 您應該以某種方式設置方法copyDirectory的格式,因此它不會引發所有這些異常:


    public static boolean copyDirectory(File source, File destination) {
      try{
        // Copy Stuff
        return true;
      catch(IOException e){
        // Your way of ErrorLogging
        return false;
      }
    }

  1. 對於所有IO-Stuff,例如復制刪除等等,我建議您使用ApachCommonIO: http ://commons.apache.org/io/。

編輯:

請立即嘗試這段代碼,至少應該編譯一下,然后提示您什么地方不對:

import org.apache.commons.io.FileUtils;
// the rest import
public class MyClass{
  public myMethod(){
   String src = "/home/user/dir_src";
   String dst = "/home/user/dir_dst";
   try{
      FileUtils.copyDirectory(new File(src), new File(dst)); 
   catch(IOException e){
      e.printStackTrac();
   }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM