编程语言
首页 > 编程语言> > java-从URL写入图像

java-从URL写入图像

作者:互联网

我正在尝试从网址下载图片…我的代码是:

String url = "http://mysite.com/image.xyz" 

其中xyz可以是jpg / png / jpeg.

现在可以使用以下命令从url读取图像

BufferedImage image = ImageIO.read(url);

现在我需要的是在使用以下命令将图像写入文件时:

ImageIO.write(image, "variable" , new File("C:\\out1.jpg"));

我需要将变量的值替换为xyz的值…其中xyz的值将从网址中提取….

那么如何做到这一点……..

解决方法:

使用类java.net.URL:

URL u = new URL(url);
String name = u.getFile();
String ext = name.substring(name.lastIndexOf(".") + 1);

在分机中,您有分机号.

[编辑]

关于其他答案的一些注意事项:

除非您碰巧有一个带有查询参数的URL(例如http://www.example.org/folder/file.png?size=big),否则它们都是很好的答案.

使用最后三个字符,它将返回“ big”而不是png.

同样,如果图像是.jpeg,它将返回“ peg”.

仅在最后一个“.”之后使用.出于同样的原因,字符串中的ins也很危险,它会返回“ .png?size = big”.

java.net.URL将考虑所有这些情况,并且仅返回文件名.为此,提取扩展名仍然是“找到要点”的问题,但至少要在已清理的String上.

标签:javax-imageio,java
来源: https://codeday.me/bug/20191208/2087894.html