java.lang.illegalArgumentException:Image == null?

时间:2015-01-13 16:42:14

标签: java image-processing illegalargumentexception

我打算编写一个读取图像并保存的java程序。好像我已经解决了这个问题。请帮忙。这是我的代码。

public class test{
public static void main(String[] args){
try{
URL testurl=new URL("www.google.co.in");
img=ImageIO.read(testurl.openStream());
ImageIO.write(img,"png",new File("c:\\out.jpg"));
}
catch(IOException e){}
}

我也尝试使用localhost网址,但它没有用。请帮我。我还希望以与网页中相同的名称保存图像。关于我该怎么办的任何建议?

3 个答案:

答案 0 :(得分:4)

URL imageUrl = new URL("http://host.com/image.jpg");
BufferedImage image = ImageIO.read(imageUrl);

File outputFile = new File("myImage.jpg");
ImageIO.write(image, "jpg", outputFile);

我假设您使用的网址只是一个占位符,因为它不是图片。

答案 1 :(得分:0)

您无法自动从HTML文件创建图像。唯一可行的方法是首先渲染HTML,或者如果以图像文件开头

答案 2 :(得分:0)

问题是您指定的网址。它必须能够作为图像读取。正如Java Docs所说:

  

如果没有已注册的ImageReader声称能够读取生成的流,则返回null。

因此,如果您指定如下链接:

URL testurl = new URL("http://www.dotahut.com/img/icons/spells/442.png");

它会起作用。