将图像保存到桌面时出现问题

时间:2014-02-08 20:05:34

标签: java image file-io

尝试保存来自this网址的图片,该图片会转换为图片。看起来我错过了什么,图像没有保存在桌面上

import java.awt.image.BufferedImage;
import java.io.File;
import java.net.URL;
import javax.imageio.ImageIO;

public class Image {

    public static void main(String[] args) {


        BufferedImage image = null;
        try {
            String url = "http://ramp.sdr.co.za/zp-core/i.php?a=1402NYFW/NicholasK&i=1402_NYFW_1005_NicholasK.JPG&w=387&h=580&cw=&ch=&q=92&wmk=!";

            String imgPath = null;
            imgPath = "C:/temp" + "a" + "";
            URL imageUrl = new URL(url);
            image = ImageIO.read(imageUrl);
            if (image != null) {
                System.out.println("in here");
                File file = new File(imgPath);
                ImageIO.write(image, "jpg", file);
            }

        } catch (Exception ex) {
            ex.printStackTrace();

        }
    }
}

1 个答案:

答案 0 :(得分:2)

您可能没有适当的用户权限来写入“C:/ tempa”。事件,如果您决定使用“c:/ temp”,该文件夹可能不存在,您可能没有创建它或写入它所需的权限。

您可以使用System.getProperties("user.home"),它将返回当前用户的主目录,这更有可能允许您写入

String imgPath = System.getProperties("user.home") + "/a image.jpg";
File file = new File(imgPath);
ImageIO.write(image, "jpg", file);

我还会在else语句中添加if语句,以便您可以查看图片何时未加载