如何从Java中的任何网页下载图像
嗨,我正在尝试从网页下载图像。我正在尝试从“http://www.yahoo.com”主页下载图像。请告诉我如何将“http://www.yahoo.com”作为输入传递。并在打开此网页时如何从此页面获取图像。请给我java代码,以便从网页中获取图像。
嗨,我正在尝试从网页下载图像。我正在尝试从“http://www.yahoo.com”主页下载图像。请告诉我如何将“http://www.yahoo.com”作为输入传递。并在打开此网页时如何从此页面获取图像。请给我java代码,以便从网页中获取图像。
try (URL url = new URL("http://www.yahoo.com/image_to_read.jpg")) {
Image image = ImageIO.read(url);
} catch (IOException e) {
// handle IOException
}
有关详细信息,请参阅程序包。这是使用AWT图像。否则,您可以执行以下操作:javax.imageio
URL url = new URL("http://www.yahoo.com/image_to_read.jpg");
InputStream in = new BufferedInputStream(url.openStream());
ByteArrayOutputStream out = new ByteArrayOutputStream();
byte[] buf = new byte[1024];
int n = 0;
while (-1!=(n=in.read(buf)))
{
out.write(buf, 0, n);
}
out.close();
in.close();
byte[] response = out.toByteArray();
然后,您可能希望保存图像,因此请执行:
FileOutputStream fos = new FileOutputStream("C://borrowed_image.jpg");
fos.write(response);
fos.close();
如果要保存图像并且知道其URL,则可以执行以下操作:
try(InputStream in = new URL("http://example.com/image.jpg").openStream()){
Files.copy(in, Paths.get("C:/File/To/Save/To/image.jpg"));
}
您还需要处理可能被抛出的 s。IOException