[英]Copying an image from url using java
我正在尝试从URL下载图像。 我使用Apache Commons库:
org.apache.commons.io.FileUtils
.copyURLToFile(
new URL(
"https://lh3.ggpht.com/AXYMUV5cpne2vE9U3X8x87HgrbwijwiG50_yOnehU2MUPKDoJky-BKFOPZzZ07Pug8U=h230"),
new File("test.png"));
打开图像时,它不是PNG文件。 这是将图像从网址下载到本地的好方法吗?
更新 。 谢谢你们的回答我不知道我需要得到connection.getContentType();
然后将其保存为jpg或png。
如果你检查网址,它是JPEG文件。 将文件名重命名为test.jpeg后尝试执行程序。
检查内容类型请参阅此SO问题 。 然后使用此选项将文件保存为正确的类型。
在此URL上运行wget并查看HTTP响应,看起来文件类型明确指定为JPEG:
--2012-06-27 16:55:30-- https://lh3.ggpht.com/AXYMUV5cpne2vE9U3X8x87HgrbwijwiG50_yOnehU2MUPKDoJky-BKFOPZzZ07Pug8U=h230 Resolving lh3.ggpht.com... 74.125.237.108, 74.125.237.106, 74.125.237.107, ... Connecting to lh3.ggpht.com|74.125.237.108|:443... connected. HTTP request sent, awaiting response... HTTP/1.0 200 OK Access-Control-Allow-Origin: * ETag: "v1" Expires: Thu, 28 Jun 2012 06:50:40 GMT Content-Disposition: inline;filename="unnamed.jpg" Content-Type: image/jpeg X-Content-Type-Options: nosniff Date: Wed, 27 Jun 2012 06:50:40 GMT Server: fife Content-Length: 46597 X-XSS-Protection: 1; mode=block Cache-Control: public, max-age=86400, no-transform Age: 290 Connection: Keep-Alive Length: 46597 (46K) [image/jpeg]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.