【发布时间】:2012-12-17 19:20:12
【问题描述】:
您能告诉我如何从 URL(例如:从“http://www.google.ru/intl/en_com/images/logo_plain.png”)下载图像到JLabel,但不将其保存在硬盘上?
你能给我一个简单的例子吗?
我需要的只是将图像从URL 放到JLabel(例如 ImageIO)
【问题讨论】:
标签: java swing url jlabel javax.imageio
您能告诉我如何从 URL(例如:从“http://www.google.ru/intl/en_com/images/logo_plain.png”)下载图像到JLabel,但不将其保存在硬盘上?
你能给我一个简单的例子吗?
我需要的只是将图像从URL 放到JLabel(例如 ImageIO)
【问题讨论】:
标签: java swing url jlabel javax.imageio
类似
JLabel label = new JLabel(new ImageIcon(ImageIO.read(new URL("http://www.google.ru/intl/en_com/images/logo_plain.png")));
这会引发一些异常,所以要小心
【讨论】:
ImageIO(虽然不正确),可以直接在ImageIcon构造函数中使用URL
ImageIcon 的一个方面是,如果提交一个不指向它支持的图像的URL,它将默默地失败。 (虽然我不得不承认,在某些极端情况下,“图像加载”会成为一个复杂而神秘的主题,例如,不要将 ImageIO 用于 1point1c.org/gif/thum/plnttm.gif 等动画 GIF - 你最终只会得到第一帧......)跨度>
由于您似乎不需要使用 ImageIO,即使您多次提到它,这是我所知道的最简单的方法:
label = new JLabel(new ImageIcon(new URL(urlString)));
【讨论】:
ImageIcon 会静默失败。