0

在我的应用程序中,我需要创建一个目录的表示,该目录<class_name>是包含 的包。简而言之,我需要创建一个File代表该目录的对象。

代码如下:

Package package1 = <class_name>.class.getPackage();
String string = "/" + package1.getName().replace('.', '/');
URL url = <class_name>.class.getResource( string );
File file = new File( url.toURI() );

现在,问题是在创建File对象时,抛出了这个异常:

java.lang.IllegalArgumentException:URI 不是分层的。

任何人都可以阐明并帮助我解决这个问题吗?

4

1 回答 1

0

我不使用 NetBeans。所以,我帮不了你。但是,如果您可以在命令行中使用 java,那么请尝试使用此测试代码。

package rick;
import java.net.*;
import java.io.*;
public class Test{
  public static void main(String[] args){
     Test test = new Test();
     Package package1 = test.getClass().getPackage();
     String string = "/" + package1.getName().replace('.','/');
     URL url = test.getClass().getResource(string);
     File  file = new File(url.toString());
     System.out.println(file.getPath());
  }
}
于 2012-06-26T16:01:19.993 回答