java怎样判断图片格式
我用java的GifEncoder和JPEGImageEncoder来实现java图片的显示和保存
但是在保存的时候总是只能保存其中一种格式 如过是Jpg格式的话保存后
仍是Gif格式 反过来相同……
private void saveImage()
{
if(flag==1)
{
try
{
int saved=fileChooser.showSaveDialog(this);
if(saved==fileChooser.APPROVE_OPTION)
{
File filenameSave=fileChooser.getSelectedFile();
String filename=new String(filenameSave.getPath()+".jpg");
FileOutputStream out=new FileOutputStream(filename);
FileInputStream in=new FileInputStream(this.openFile.toString());
tempImage=ImageIO.read(in);
JPEGImageEncoder encoder=JPEGCodec.createJPEGEncoder(out);
encoder.encode((BufferedImage) tempImage);
out.flush();
out.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
else if(flag==0)
{
try
{
int saved=fileChooser.showSaveDialog(this);
if(saved==fileChooser.APPROVE_OPTION)
{
File filenameSave=fileChooser.getSelectedFile();
String filename=new String(filenameSave.getPath()+".gif");
FileOutputStream out=new FileOutputStream(filename);
FileInputStream in=new FileInputStream(this.openFile.toString());
BufferedImage tempImage=ImageIO.read(in);
encoder1=new GifEncoder(tempImage,out);
encoder1.encode();
out.flush();
out.close();
in.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
保存按钮的响应事件代码:
switch(flag)
{
case 0:
{
flag=0;
this.saveImage();
}break;
case 1:
{
flag=1;
this.saveImage();
}break;
}