getResourceAsStream returns 空值

getResourceAsStream returns null value

你好,我想问一下为什么我使用 getResourceAsStream 得到的是空值?

这是我的代码片段:

我试过了,效果很好。

InputStream ios = new FileInputStream(Constant.DEFAULT_PROFILE_PICTURE);

我只想知道为什么我在使用 getResourceAsStream 时得到空值。

InputStream ios = request.getSession().getServletContext().getResourceAsStream(Constant.DEFAULT_PROFILE_PICTURE);

Constant.DEFAULT_PROFILE_PICTURE 路径是: /home/user/NoImageAvailable.png

感谢您的一些意见!

您正在正确使用和初始化资源。

因此,如果它不起作用,则表明您的文件要么没有使用其在 Resources 文件夹中的相对路径,要么根本不在 Resources 文件夹中。

如果它不在 Resources 文件夹中 getResourceAsStream 无法访问它。

例如: 结构:

└── src
    └── main
        ├── java
        │   └── Main.java  // Here you would use the your Resource for example
        └── resources
            └── NoImageAvailable.png

常量声明:

class Constant {
    public static final String DEFAULT_PROFILE_PICTURE = "NoImageAvailable.png";
}

如果您使用的是结构,这应该有效:)。