2012-07-17 23 views
5

फ़ाइल करने के लिए buffered छवि लिखने में असमर्थ है मुझे jpg फ़ाइल में bufferedimage लिखने में कुछ समस्या है।ImageIO

public boolean writeToFile(BufferedImage buff,String savePath) { 

     try { 

      System.out.println(buff.toString()); 
      ImageIO.write(buff, ".jpg", new File(savePath)); 
      return true; 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 
यहाँ

क्या buff.toString() द्वारा मुद्रित हो जाता है:: मेरे विधि में , मैं मैं क्या कर रहा हूँ है एक bufferedimage पैरामीटर के रूप में जो मैं एक फ़ाइल

यहाँ में लिखने की ज़रूरत हो रही है

[email protected]: type = 1 DirectColorModel: rmask=ff0000 gmask=ff00 bmask=ff amask=0 IntegerInterleavedRaster: width = 1024 height = 172 #Bands = 3 xOff = 0 yOff = 0 dataOffset[0] 0 

कार्यक्रम किसी भी बिना किसी अपवाद के ठीक चलाता है, लेकिन उत्पन्न jpg फ़ाइल आकार 0 bytes

मैं trie है छवि का उपयोग किए बिना डी लेखन छवि:

public boolean writeToFile(BufferedImage buff,String savePath) { 



     try { 

      System.out.println("got image : " + buff.toString()); 
      Iterator iter = ImageIO.getImageWritersByFormatName("jpeg"); 
      ImageWriter writer = (ImageWriter)iter.next(); 
      ImageWriteParam iwp = writer.getDefaultWriteParam(); 


      iwp.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); 
      iwp.setCompressionQuality(.5f); 


      File file = new File(savePath); 
      FileImageOutputStream output = new FileImageOutputStream(file); 
      writer.setOutput(output); 
      IIOImage image = new IIOImage(buff, null, null); 
      writer.write(null, image, iwp); 
      writer.dispose(); 

      return true; 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

     return false; 
    } 

और यह बिल्कुल ठीक काम करता है।

यह छविियो के साथ क्यों काम नहीं कर रहा है?

उत्तर

8

अपने प्रारूप नाम से . हटाएं।

ImageIO.write(buff, "jpg", new File(savePath)); 
+0

इसकी कार्यप्रणाली! धन्यवाद – JAVAGeek

4

मानो या न मानो, यह सिर्फ इस ".jpg" है, इसे बदल "jpg" करने के लिए और यह ठीक काम करेंगे।

मुझे एक ही समस्या थी, लेकिन मैंने ImageIO पर देखा, और यह link पाया।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^