問題:前幾天,碰到了需要從web應用程式讀取檔案內容的問題。一般的,設定檔都放在工程src目錄下,那樣讀起來也很方便,對大多數人都是這種習慣。但這次偏偏就放在WebContent目錄下的子目錄裡,雖然鬱悶,問題還是要解決的。因此在此聊記一筆。
解決方法:XXX.class.getResourceAsStream(Path)取得流對象,要明白部署後目錄的變化
實例:
import java.io.IOException; import java.io.InputStream; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; public class MyListener implements ServletContextListener { @Override public void contextDestroyed(ServletContextEvent arg0) { } @Override public void contextInitialized(ServletContextEvent event) { //指定要读取的文件路径,此处的test.txt放在工程的web目录下面 InputStream is = MyListener.class.getResourceAsStream("/../../web/test.txt"); if(is!=null){ byte []bytes = new byte[1024]; try { while(is.read(bytes)>0){ System.out.println(bytes.toString()); } } catch (IOException e) { e.printStackTrace(); }finally{ if(is!=null){ try { is.close(); } catch (IOException e) { e.printStackTrace(); } } } } } }
以上是Java如何讀取WEB應用中的資源的詳細內容。更多資訊請關注PHP中文網其他相關文章!