java web读取本地文件相对路径问题
写了一个读取本地文件的方法,Filefile=newFile(htmlFile);FileReaderfr=newFileReader(file);BufferedRea...
写了一个读取本地文件的方法,
File file = new File(htmlFile);
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
while((s=br.readLine())!=null){
al.add(s);
}
在当前类写了main方法测试了一下是可行的,
但是页面某方法想调用该方法,不能实现。
总结问题是:只有放在static方法中可行,在其他地方调用都显示找不到指定文件。
文件结构:
把本地文件放在了web-inf的classes下了,相对路径写的(“/file.txt”);
求教为啥static方法可以,其他地方调用不行,这个函数本身不是静态的啊。 展开
File file = new File(htmlFile);
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
while((s=br.readLine())!=null){
al.add(s);
}
在当前类写了main方法测试了一下是可行的,
但是页面某方法想调用该方法,不能实现。
总结问题是:只有放在static方法中可行,在其他地方调用都显示找不到指定文件。
文件结构:
把本地文件放在了web-inf的classes下了,相对路径写的(“/file.txt”);
求教为啥static方法可以,其他地方调用不行,这个函数本身不是静态的啊。 展开
4个回答
展开全部
相对路径的话,可以先获取到当前文件的编译路径,之后在找到想找文件的路径的思路来实现。
举例:
XMLS.class.getClass().getResourceAsStream("/test/test.txt");
解释:XMLS.class.getClass()是获取当前的类编译路径,之后通过getResourceAsStream的形式即可找到要读取的文件的路径。
备注:这个方法中后面的路径也可以通过截取的形式来进行路径获取,实现原理都是找到当前类路径,之后通过相对位置找到另外文件路径。
举例:
XMLS.class.getClass().getResourceAsStream("/test/test.txt");
解释:XMLS.class.getClass()是获取当前的类编译路径,之后通过getResourceAsStream的形式即可找到要读取的文件的路径。
备注:这个方法中后面的路径也可以通过截取的形式来进行路径获取,实现原理都是找到当前类路径,之后通过相对位置找到另外文件路径。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
,相对路径写的(“/file.txt”);
我这样是指类的相对运行目录吧。
静态方法,我没试过。
web程序一般都是放在发布目录中的指定目录下,
通过webcontent来寻找。
我这样是指类的相对运行目录吧。
静态方法,我没试过。
web程序一般都是放在发布目录中的指定目录下,
通过webcontent来寻找。
追问
谢谢,我试试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-09
展开全部
要用绝对路径,异常还有处理
追问
绝对路径是可以的,这里问一下相对路径如何解决,O(∩_∩)O谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不会的,应该是你其它地方肯定也有改动 仔细查查
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询