例如,我的 java 文件有这样的路径com.company.project.util
和文件javaClass.java
。在这个文件中,我编写程序来读取文件夹中的另一个文件META-INF/example.xml
。
这两个文件夹com.company.project.util
都META-INF
在同一个文件夹中src
。我必须将哪个相对路径传递到这个 javaClass.java 来实现 example.xml?需要使用多少次../
?因为我对这个大包名称有点困惑。
如果从包根 (src) 运行程序并使用前面提到的 FileReader,则只需使用“META-INF/example.xml”。如果工作目录不同,请根据需要修改此路径。
只是给你举个例子
我的 Test1 类在默认包中,我的资源文件夹在 src 文件夹中,我可以访问资源。您可以根据需要映射您的需求。
公共类Test1 {
public static void main(String[] args) {
new Test1();
}
Test1(){
BufferedInputStream file= (BufferedInputStream) this.getClass().getResourceAsStream("resources/a.txt");
try {
System.out.println((char)file.read());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
此外,如果您的 java 类在任何包中,那么您可以使用“../”转到类路径作为每个文件夹的后退一步。到达类路径后,请提供资源路径。
如果文件在您的源文件夹中,那么它在您的类路径中,您将能够使用绝对路径作为资源加载它:
this.getClass().getResourceAsStream("/META-INF/example.xml");