您的位置:首页 > 编程语言 > Java开发

javaweb中关于读取资源文件三种方式

2014-02-17 22:42 288 查看
1.      假设要读取的1.txt文件在web工程的src目录下:

我们可以采取class对象.getResource(filename).getFile()的方式得到1.txt的磁盘绝对路径

publicvoid doGet(HttpServletRequest request, HttpServletResponseresponse)

throws ServletException, IOException {

String filename = "/1.txt";

filename=ReadFileServlet.class.getResource(filename).getFile();

System.out.println(filename);

BufferedReaderbr = new BufferedReader(new InputStreamReader(

new FileInputStream(new File(filename))));

String content = br.readLine();

System.out.println(content);

}


结果:

/E:/资料/javaweb/apache-tomcat-6.0.14/webapps/MyJsp01/WEB-INF/classes/1.txt

第二种方式 通过

String filename2="/WEB-INF/classes/1.txt";  
filename2=this.getServletContext().getRealPath(filename2);
      System.out.println(filename2);

结果:

E:\资料\javaweb\apache-tomcat-6.0.14\webapps\MyJsp01\WEB-INF\classes\1.txt

第三种方式:

如果文件在webRoot根目录下可以通过getRealPath(filename)得到绝对磁盘路径

String filename3="/2.txt";
filename3=this.getServletContext().getRealPath(filename3);
System.out.println(filename3);
readFile(filename3);


结果:
E:\资料\javaweb\apache-tomcat-6.0.14\webapps\MyJsp01\2.txt

结论: 在web工程下利用servlet读取文件 要使用绝对磁盘路径
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息