java - 如何在java中设置正确的图像路径?
问题描述
我正在尝试使用Java中的paint方法加载和绘制它,无论我以何种方式编写路径它总是显示异常
java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(Unknown Source)
我将图像与班级放在同一文件夹中
这是我正在加载图像的行
Image img = ImageIO.read(getClass().getResourceAsStream("pepsi.png"));
解决方案
看看MKYong 的教程。它向您展示了将图像放在哪里。如果要将图像作为“资源”加载,则必须将其放在资源文件夹中。您的项目结构将是这样的:
MyProject
+--src
+--main
+--java
| +-com
| +--me
| +--Main.java
+--resources
+--pepsi.jpg
并在您的Main
班级中执行该代码段:
try {
Image img= ImageIO.read(Main.class.getClassLoader().getResourceAsStream("pepsi.jpg"));
System.out.println(img.getWidth(null)); //this is just a test, when it prints out the width of your image, you have the right file loaded
} catch (IOException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
推荐阅读
- bash - 如何将参数从 git 别名传递到外部脚本
- azure - AWS ECR PULL 没有基本的身份验证凭证
- erlang - 找不到 .erlang.cookie 文件
- generator - 实现一个 NONinfinite 生成器
- arrays - 是否可以在laravel中的Array ['在此处添加变量']中分配变量
- javascript - 如何在 php 中的锚 url 中传递参数
- html - 返回未定义而不是呈现 html 标签
- php - 来自数组 POST 的变量不会被打印
- azure - 为现有虚拟机规模集添加公共 IP
- redis - (错误)redis-cli 上的 ERR 未知命令“XTRIM”