我想问个问题:
有a和b工程,b工程依赖于a
现在a工程里面一个类有如此方法:
public void path() throws FileNotFoundException {
URL resource = ClassLoader.getSystemResource("");
File file = new File("TestFolder/my.txt");
FileInputStream fileInputStream = new FileInputStream(file);
try {
fileInputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}TestFolder/my.txt是一个a工程下面的相对路径。
现在b工程依赖于a工程,调用如下:
public static void main(String[] args) {
//String path ="D://files";
//getFile(path);
Utils utils = new Utils();
try {
utils.path();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
结果b工程报 java.io.FileNotFoundException: TestFolder\my.txt (系统找不到指定的路径。),按道理他是调用b工程下面的TestFolder/my.txt,但我想还是调用a工程下面的,且a工程仍然保持相对路径,请问大家我该怎么办?
有a和b工程,b工程依赖于a
现在a工程里面一个类有如此方法:
public void path() throws FileNotFoundException {
URL resource = ClassLoader.getSystemResource("");
File file = new File("TestFolder/my.txt");
FileInputStream fileInputStream = new FileInputStream(file);
try {
fileInputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}TestFolder/my.txt是一个a工程下面的相对路径。
现在b工程依赖于a工程,调用如下:
public static void main(String[] args) {
//String path ="D://files";
//getFile(path);
Utils utils = new Utils();
try {
utils.path();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
结果b工程报 java.io.FileNotFoundException: TestFolder\my.txt (系统找不到指定的路径。),按道理他是调用b工程下面的TestFolder/my.txt,但我想还是调用a工程下面的,且a工程仍然保持相对路径,请问大家我该怎么办?
解决方案 »
- struts2 action问题
- 求高手详细解释一下这段java代码
- 创建web项目的时候出现了导包问题
- Hibernate 很急的问题
- 结合数据库,实现树形下拉列表?
- 本人学java时间不长,是个菜鸟,先遇到hibernate 数据库级连方面一个问题往高手给解决下
- Java多线程面试题求开解
- 在struts页面上往文本框里输入值,然后提交,当再打开页面时文本框里有刚才输入的值,这怎么解决,应该是空的才对
- 给大家一个锻炼脑子的机会:EJB有什么好处?
- 国际化多语种内容系统的设计与实现?
- 页面显示正常,后台却输出Servlet.service() for servlet [jsp] in context with path [/luntan] t
- http://baike.baidu.com/view/913128.htm
public void path(File file) throws FileNotFoundException {另一种做法是将所需访问的文件作为源码管理,也即最终会进入CLASSPATH中,那么:
InputStream is = this.getClass().getResourceAsStream("xxoo");
它会直接按照 包 路径来查找资源文件,并转为 输入流