Servlet:如何构建绝对路径

发布于 2025-01-07 02:57:54 字数 334 浏览 1 评论 0原文

我有一个java对象,并且正在尝试做这样的事情:

InputStream is = new FileInputStream(imagePath)
BufferedImage image = ImageIO.read(is)

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

谢谢!

I hava a java object, and am trying to do something like this:

InputStream is = new FileInputStream(imagePath)
BufferedImage image = ImageIO.read(is)

The problem is that I do not know how to get the value of imagePath. I believe I need to build an absolute path to the file. How is this possible when I am currently in a Java class, but my image file is under my webRoot folder? I have tried getResource(".").getPath() but the path seems to include the .war in it which I dont think is possible. Any help will be greatly appreciated!

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

回梦 2025-01-14 02:57:54

我们总是使用这种方式来获取一个InputSteam

InputStream input = getServletContext().getResourceAsStream("/images/image.jpg");

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

File file = new File(getServletContext().getRealPath("/images/image.jpg"));

We always use this way to get an InputSteam:

InputStream input = getServletContext().getResourceAsStream("/images/image.jpg");

And if you really need the path of a file, you can also code like this:

File file = new File(getServletContext().getRealPath("/images/image.jpg"));
娇女薄笑 2025-01-14 02:57:54

您应该能够使用该资源,不需要路径。请参阅此 SOq:

You should be able to use the resource, you don't need the path. See this SOq:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文