ImageIO can't read input file

eclipse, java, javax.imageio

Solution

Change `/` for `\` if you are using windows.

A more cross-platform approach would be substitute

`C:` for `File.listRoots()[0]` and every `/` for `File.separator`.

Read more on the File api documentation

EDIT

(I didn't read this line, sorry)

This code was running properly untill i try to read an image from the source package

In order to get a file from inside your jar package, one must use the `getClass().getResource()` method.

Example:

application-package:
|-Main.java
|-resources
  |-image.jpg

For the above directory structure:

BufferedImage im = ImageIO.read(new File(getClass().getResource("/resources/image.jpg").toURI()));

Would do the trick.

Problem

``` public static void imRes(String pat) { try { BufferedImage bckimg = ImageIO.read(new File("c:/s/deneme.jpg")); File s = new File(pat); BufferedImage im = ImageIO.read(s); BufferedImage im1 = resIm(im); BufferedImage finIm = mergIm(im1, bckimg); ImageIO.write(finIm, "jpg", new File("c:/s/deneme1.jpg")); } catch (IOException e) { e.printStackTrace(); } ``` This is my first post, excuse me if I've done something wrong. This code was running properly untill i try to read an image from the source package. But now it can't read any image. What am I doing wrong? Or is it something about eclipse? Exception: ``` javax.imageio.IIOException: Can't read input file! at javax.imageio.ImageIO.read(Unknown Source) at imRe.imRes(imRe.java:12) at imReTest.main(imReTest.java:6) ``` Thanks...

Original source

Related problems