Servlet:如何构建绝对路径

jam*_*mes 3 java servlets path

我有一个 java 对象,并试图做这样的事情:

InputStream is = new FileInputStream(imagePath)
BufferedImage image = ImageIO.read(is)
Run Code Online (Sandbox Code Playgroud)

问题是我不知道如何获得imagePath. 我相信我需要建立一个文件的绝对路径。当我目前在 Java 课程中,但我的图像文件在我的 webRoot 文件夹下时,这怎么可能?我已经尝试过,getResource(".").getPath()但路径似乎包含.war我认为不可能的路径。任何帮助将不胜感激!

谢谢!

小智 5

我们总是使用这种方式来获得InputSteam

InputStream input = getServletContext().getResourceAsStream("/images/image.jpg");
Run Code Online (Sandbox Code Playgroud)

如果你真的需要一个文件的路径,你也可以这样编码:

File file = new File(getServletContext().getRealPath("/images/image.jpg"));
Run Code Online (Sandbox Code Playgroud)