JAVA中获取文件的方法采用当前调用类的模版路径来获取本项目的class路径。
URL url = PathTest.class.getResource("/");此路径是不包含包路径的
URL url = PathTest.class.getResource("");此路径包含当前包路径
解释一下PathTest.class这个得到的是编译后的类模板,也就是你编译后的class的路径。但是此路径是以file:/开头的文件路径要去掉文件头才能使用。String path = url.getPath();即可得到不带文件头的路径。
一下代码是一个读取package中的配置文件的例子,可以参考。提示一下,,代码编译之后是在bin文件夹下运行的,不是你的工作空间看到的路径,如果产生异常,可以到此路径下查找。
// 此方式获得的路径为file:/xxxxxxxxxxxx这种路径是没办法使用的
URL url = PathTest.class.getResource("");
// 此操作去除了file:/
String path = url.getPath();
// 将本包内的文件与包路径拼接 注意在代码中不要使用/作为分隔符,使用 File.separator
File file = new File(path + "TestProp.properties");
System.out.println("配置文件的路径为:" + file.getAbsolutePath());
/**
* 下面是读取配置文件properties
*/
FileInputStream inputStream = new FileInputStream(file);
Properties properties = new Properties();
properties.load(inputStream);
System.out.println(properties.get("path"));