将临时.jpg文件保存到计算机

时间:2016-07-07 13:19:25

标签: java file svg jpeg

在java中有一个名为.createTempFile的方法,我用它来生成一个图片并返回File。这是代码的一部分:

File jpgFile = File.createTempFile("tmp, ".jpg");
//fill the file with information ...
return jpgFile;

当我在main方法中访问该方法时,我得到一个文件。现在我的问题是:我怎么能保存这个文件?我试着这样做:

File f = generateJPG(); // (the method that is explained above)
File out = new File("C:/fileJPG.jpg");

FileInputStream fis = new FileInputStream(f);
BufferedReader in = new BufferedReader(new InputStreamReader(fis));

FileWriter fstream = new FileWriter(out, true);
BufferedWriter outw = new BufferedWriter(fstream);

String aLine = null;
while ((aLine = in.readLine()) != null) {
    outw.write(aLine);
    outw.newLine();
}

in.close();
outw.close();

但是这不起作用,只是给了我一个充满随机像素的令人困惑的画面。那么如何将这个临时文件保存到我的电脑上呢?

1 个答案:

答案 0 :(得分:1)

我刚刚找到了解决方案。我使用了ImageIOBufferedImage,就像@JordiCastilla所说的那样,它运行良好。这是代码:

File f = generateJPG();

BufferedImage image = ImageIO.read(f);

File out = new File("C:/fileJPG.jpg");

ImageIO.write(image, "jpg", out);