こんにちは私は転送されたbufferedImageをディスクに保存する必要があるfollowed関数に問題があります。このコードを実行すると、例外は発生せず、BufferedImageはImageIO.write(img、ext、fileToSave)ファイルに転送され、extは正しいですが、ディスクに画像がありません。数時間後、私は何がうまくいかないのか分かりません。多分許可?しかし、私はそれをディスク上で読み取り/書き込みする必要があります。
public boolean SaveImage(BufferedImage img)
{
JFileChooser FC=new JFileChooser("C:/");
FC.addChoosableFileFilter(new jpgSaveFilter());
FC.addChoosableFileFilter(new jpegSaveFilter());
FC.addChoosableFileFilter(new PngSaveFilter());
FC.addChoosableFileFilter(new gifSaveFilter());
FC.addChoosableFileFilter(new BMPSaveFilter());
FC.addChoosableFileFilter(new wbmpSaveFilter());
int retrival=FC.showSaveDialog(null);
if (retrival == FC.APPROVE_OPTION)
{
String ext="";
String extension=FC.getFileFilter().getDescription();
if(extension.equals("*.jpg,*.JPG"))
{
ext=".jpg";
}
if(extension.equals("*.png,*.PNG"))
{
ext=".png";
}
if(extension.equals("*.gif,*.GIF"))
{
ext=".gif";
}
if(extension.equals("*.wbmp,*.WBMP"))
{
ext=".wbmp";
}
if(extension.equals("*.jpeg,*.JPEG"))
{
ext=".jpeg";
}
if(extension.equals("*.bmp,*.BMP"))
{
ext=".bmp";
}
File fileToSave = FC.getSelectedFile();
try{
ImageIO.write(img, ext ,fileToSave);
}
catch (IOException e) {
e.printStackTrace();
}
catch(Exception ex)
{
System.out.println(ex.getMessage());
return false;
}
return true;
}
return false;
}
手伝ってくれてありがとう!