java - 类加载器的异常行为

标签 java class load inputstream

public InputStream getResourceAsStream ( Class className, String name){
       InputStream in = null;
       in = className.getClassLoader().getResourceAsStream(name);
       return in;
   }

className:使用Class.forName()加载的类。

name:同一目录中存在的资源的名称。

问题:结果始终为空。

尽管我尝试了很多方法,但有人可以告诉我上面的代码有什么问题吗?

最佳答案

几天前我自己也遇到了同样的问题。但我发现我传递名字的方式是错误的。我的意思是我弄乱了相对路径和绝对路径。如果无法找到名称,则会抛出 nullpointerException。

要检查您的代码是否正常并且问题仅与名称有关,只需对名称的整个路径进行硬编码并确保其加载即可。如果是这样,那么这只是你必须纠正的一个小问题。其次,唯一的另一个问题是,如果您从静态 block 加载它,那么语法可能会有所不同。不然应该没有问题。

您可以检查文件加载情况的好地方是 http://www.javaworld.com/javaworld/javaqa/2003-08/01-qa-0808-property.html?page=2

请告诉我这是否有帮助..

关于java - 类加载器的异常行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7329077/

相关文章:

python - 如何为不存在的类成员引发异常?

javascript - 使用//代替协议(protocol)

java - 在新标签页中打开 Google 链接

java - 我的第一个应用程序上的错误消息计算了从YouTube视频中学习到的2个值

c++ - for 循环中的 vector 删除函数未正确删除类的 vector

php - 如何在 PHP >= 5.3 严格模式下向对象添加属性而不产生错误

jQuery 在绑定(bind) .load() 事件之前检查图像是否已加载

load - MySQL转储和加载时间之间的不合理差异

java - GWT-SDK升级问题

java - 获取 SD 卡上所有图像的数组列表