2014-04-13 111 views
0

我是Tomcat和Servlet的初學者。我遇到了關於讀取servlet中的File的問題。我有搜索關於計算器這個問題了大量的信息,但我還沒有解決它。我希望得到一些help.I寫的代碼如下:在Servlets中讀取文件

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() 

獲得的InputStream但因爲某些原因,我NEAD獲得FileInputSream。

我希望能得到您的幫助!謝謝!

回答

1

這應該工作(無需使用FileInputStream):

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