BUG in Java ImageIO,problem in JPEGImageDecoder,can't read or write image

Discussion in 'Java' started by Subha, Oct 23, 2006.

  1. Subha

    Subha Guest

    HI,
    I got an excepton while trying to save an dynamically
    generated image file in the local memory using the ImageIO class.Here
    is the code snippent I wrote:


    /* Robot robot = new Robot();
    BufferedImage image = robot.createScreenCapture(screenRect);
    // save captured image to jpg file
    ImageIO.write(image, "jpg", new File(outFileName));*/

    And here is the exception I am finding (I never found this before, I
    runned the code thousands times before)

    /*java.io.FileNotFoundException: pic5.jpg (Access is denied)
    at java.io.RandomAccessFile.open(Native Method)
    at java.io.RandomAccessFile.<init>(RandomAccessFile.java:212)
    at
    javax.imageio.stream.FileImageOutputStream.<init>(FileImageOutputStream.java:44)
    at
    com.sun.imageio.spi.FileImageOutputStreamSpi.createOutputStreamInstance(FileImageOutputStreamSpi.java:37)
    at
    javax.imageio.ImageIO.createImageOutputStream(ImageIO.java:391)
    at javax.imageio.ImageIO.write(ImageIO.java:1483)
    at Test_ScreenShot.main(Test_ScreenShot.java:112)
    at Test_Main.main(Test_Main.java:466)
    at Test_ScreenShot.main(Test_ScreenShot.java:129)
    Press any key to continue...*/

    When I googled I found the following informations:-
    1)from sun's bug database:-
    http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6247985

    2)from SUN Developer Forums

    http://forum.java.sun.com/thread.jspa?threadID=768917&messageID=4382833

    3)from Java.NET forum(here they r getting the bug while they r using
    createScreenCapture() method of robot class,I am also using that in my
    code)
    http://forums.java.net/jive/thread.jspa?messageID=123247

    4)from SUN's archieve
    http://archives.java.sun.com/cgi-bin/wa?A2=ind0207&L=java-imageio-interest&D=0&P=1483

    5)Here is the actual implemetation of ImageIO class.I'm getting error
    at 391 no. line.
    http://kickjava.com/src/javax/imageio/ImageIO.java.htm

    ============================================================================================
    Now I tried the following alterntive form jdk 1.2
    to read:-
    FileInputStream fis = new FileInputStream(file);
    JPEGImageDecoder jpeg = JPEGCodec.createJPEGDecoder(fis);
    jpeg.decodeAsBufferedImage();
    fis.close();

    But after running a long time suddenly its giving exception:-
    Exception in thread "main"
    com.sun.image.codec.jpeg.ImageFormatException: Not a JPEG file: starts
    with 0xff 0xd9
    at
    sun.awt.image.codec.JPEGImageDecoderImpl.readJPEGStream(Native Method)
    at
    sun.awt.image.codec.JPEGImageDecoderImpl.decodeAsBufferedImage(Unknown
    Source)
    ============================================================================================

    My question is:-
    What is the way to read and write image in JDK?Is there any bug free
    way?what is it?



    Thanks And Regards
    Subhadip
     
    Subha, Oct 23, 2006
    #1
    1. Advertising

  2. Subha wrote:
    > HI,


    Please refrain from multi-posting in future.

    (X-post to c.l.j.h./c.l.j.p./s.i.p., w/ f-u to c.l.j.h. only)

    Andrew T.
     
    Andrew Thompson, Oct 23, 2006
    #2
    1. Advertising

  3. Subha

    EJP Guest

    Re: BUG in Java ImageIO,problem in JPEGImageDecoder,can't read orwrite image

    Subha wrote:

    > When I googled I found the following informations:-
    > 1)from sun's bug database:-
    > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6247985


    This is irrelevant. It is about IllegalArgumentException.

    > 2)from SUN Developer Forums
    >
    > http://forum.java.sun.com/thread.jspa?threadID=768917&messageID=4382833


    This gives the correct explanation. You don't have write access to that
    file or directory. Maybe it is open?

    > 3)from Java.NET forum(here they r getting the bug while they r using
    > createScreenCapture() method of robot class,I am also using that in my
    > code)
    > http://forums.java.net/jive/thread.jspa?messageID=123247


    This repeats the same explanation.

    > 4)from SUN's archieve
    > http://archives.java.sun.com/cgi-bin/wa?A2=ind0207&L=java-imageio-interest&D=0&P=1483


    This is irrelevant. It is about resolution.

    > 5)Here is the actual implemetation of ImageIO class.I'm getting error
    > at 391 no. line.
    > http://kickjava.com/src/javax/imageio/ImageIO.java.htm


    No, this is the GNU version, which I sincerely hope you aren't using,
    and obviously line 391 of this source code has nothing to do with your
    problem, which is completely defined by your original exception.

    > ============================================================================================
    > Now I tried the following alterntive form jdk 1.2
    > to read:-


    This isn't an 'alternative', this is reading an image instead of writing
    it: aompletely different issue and a completely different problem. In
    this case you are being told that the input file is corrupt.

    What a lot of confusion over nothing.
     
    EJP, Oct 24, 2006
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. F C
    Replies:
    2
    Views:
    5,218
  2. Replies:
    1
    Views:
    1,032
    Roedy Green
    Apr 18, 2004
  3. Davidski
    Replies:
    0
    Views:
    3,947
    Davidski
    Nov 5, 2004
  4. Rune
    Replies:
    4
    Views:
    1,906
  5. dhaval dalal via JavaKB.com
    Replies:
    0
    Views:
    467
    dhaval dalal via JavaKB.com
    Feb 24, 2005
Loading...

Share This Page