从 File 更改为 BufferedImage 时出现 IOException

发布于 2024-08-08 09:37:00 字数 170 浏览 5 评论 0原文

错误:未处理的异常类型 IOException。

File imgLoc = new File("player.png");
BufferedImage img = ImageIO.read(imgLoc);

如何从文件位置获取 bufferedImage?

Error: Unhandled exception type IOException.

File imgLoc = new File("player.png");
BufferedImage img = ImageIO.read(imgLoc);

How do I get a bufferedImage from a file location?

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

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

发布评论

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

评论(2

丑疤怪 2024-08-15 09:37:00

最好通过检查异常的堆栈跟踪来确定问题的原因。

作为临时措施,请将这两行替换为以下内容:

File imgLoc = new File("player.png");
BufferedImage img;
try {
   img = ImageIO.read(imgLoc);
} catch (IOException ex) {
   System.err.println(ex.getMessage());
   ex.printStackTrace();
   throw ex;
}

将一些诊断信息发送到标准错误。运行修改后的应用程序并发布结果输出。

可能的原因包括:

  • 文件名错误、
  • 文件不在应用程序的当前目录中、
  • 由于操作系统访问控制,应用程序无法读取
  • 该文件、文件可读但格式有问题
  • 等。

The cause of your problem is best determined by examining a stacktrace for the exception.

As a temporary measure, replace those two lines with the following:

File imgLoc = new File("player.png");
BufferedImage img;
try {
   img = ImageIO.read(imgLoc);
} catch (IOException ex) {
   System.err.println(ex.getMessage());
   ex.printStackTrace();
   throw ex;
}

to send some diagnostics to standard error. Run the modified app and post the resulting output.

Possible causes include:

  • The file name is wrong,
  • The file is not in the app's current directory,
  • The file is not readable by the app due to operating system access controls,
  • The file is readable but there is something wrong with its format,
  • etcetera.
傲性难收 2024-08-15 09:37:00

该文件存在吗?您是否偶然从意外的目录中读取内容?

尝试 File.exists () 和/或 File.canRead()

Does the file exist ? Are you by chance reading from an unexpected directory ?

Try File.exists() and/or File.canRead()

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