Java 在servlet中读取文件

Java 在servlet中读取文件,java,servlets,Java,Servlets,我是Tomcat和Servlet的初学者,在Servlet中读取文件时遇到了一个问题。我在stackoverflow中搜索了很多关于这个问题的信息,但是我没有解决它。我希望得到一些帮助。我编写了以下代码: URL url=getServletContext().getResource("/WEB-INF/DataSpecification.owl"); File file=new File(url.toString()); FileInputStream input=new FileInputS

我是Tomcat和Servlet的初学者,在Servlet中读取文件时遇到了一个问题。我在stackoverflow中搜索了很多关于这个问题的信息,但是我没有解决它。我希望得到一些帮助。我编写了以下代码:

URL url=getServletContext().getResource("/WEB-INF/DataSpecification.owl");
File file=new File(url.toString());
FileInputStream input=new FileInputStream(file);    
Reader in = new InputStreamReader(input,"UTF-8");
我得到以下错误:

java.io.FileNotFoundException: jndi:\localhost\MAGS\WEB-INF\DataSpecification.owl (File name or directory name wrong).
at java.io.FileInputStream.open(Native Method)
我把文件放在WEB-INF目录下

我知道我可以通过使用

getServletContext().getResourceAsStream()
但由于某些原因,我需要一个文件输入RAM

我希望得到你的帮助!谢谢大家!

这应该有效(无需使用
FileInputStream
):

InputStream is = getServletContext().getResourceAsStream("/WEB-INF/DataSpecification.owl");
Reader in = new BufferedReader(new InputStreamReader(is, "UTF-8"));