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