1

我下载了 apache commons FileUtils 来执行复制目录,并将它们添加到 eclipse 中的库下。当我Fileutils.copyDirectory(s,d)在下面说 eclipse 说“此行有多个标记 - 令牌“(”上的语法错误,删除这个令牌 - 令牌“)上的语法错误”时,删除这个令牌”。有人可以帮忙吗

import org.apache.commons.io.FileUtils;

Public class b {

    File s = new file("C://Tom//eso");         
    File d = new file("C://Tom//pos");

    FileUtils.copyDirectory(s,d);

}
4

4 回答 4

4

试试这个:

import org.apache.commons.io.FileUtils;

public class B {

    public static void main(String[] args) throws Exception {
        File s = new File("C:/Tom/eso");         
        File d = new File("C:/Tom/pos");
        FileUtils.copyDirectory(s,d);
    }

}

您的代码中有几个错误:

  • 类以大写字符开头 - 它是File,不是file。它是class B,不是class b(记住还要将文件重命名为B.java
  • 你不能使用双/字符,只有一个
  • 代码必须驻留在方法中,而不是在类级别
  • public,不是Public
  • 你不是在处理异常,要么抛出它们,要么捕获它们
于 2012-11-19T03:28:54.707 回答
1
File s = new file("C://Tom//eso");  
File d = new file("C://Tom//pos"); 

file应该大写。应该是new File(...

旁注:通常对于 Windows,路径看起来像C:\\Tom\\eso,你有正斜杠而不是反斜杠。

于 2012-11-19T03:27:38.577 回答
1

您正在尝试在方法主体之外调用方法...尝试更多类似的方法;

public class b {
    public static void main(String args[]) {
        File s = new File("C:/Tom/eso");         
        File d = new File("C:/Tom/pos");

        try {
            FileUtils.copyDirectory(s,d);
        } catch (IOException exp) {
            exp.printStackTrace();
        }        
    }
}

只是为了强调...

  • Public应该public
  • file应该File
  • //应该是/或者\\(大多数人喜欢/
  • 执行代码必须从方法或静态初始化部分的上下文中执行

我还建议您花时间学习Java 命名约定,并通读Trails Covering the Basics部分下的教程

于 2012-11-19T03:28:49.887 回答
0

两个错误。
第一的

File s = new file("C://Tom//eso");         
File d = new file("C://Tom//pos");

应该

File s = new File("C://Tom//eso");         
File d = new File("C://Tom//pos");

第二

FileUtils.copyDirectory(s,d);

应该在主要方法中。

于 2012-11-19T03:32:42.267 回答