java下载远程http地址的图片文件到本地-自动处理图片是否经过服务器gzip压缩的问题

java下载远程http地址的图片文件到本地-自动处理图片是否经过服务器gzip压缩的问题

直接上代码:

      /**
  * 下载文件到本地
  *
  * @param urlString
  *            被下载的文件地址
  * @param filename
  *            本地文件名
  * @throws Exception
  *             各种异常
  */
 public static void download(String urlString, String filename)
   throws Exception {
  // 构造URL
  URL url = new URL(urlString);
  // 打开连接
  URLConnection con = url.openConnection();
  // 输入流
  InputStream is = con.getInputStream();

  String code=con.getHeaderField("Content-Encoding");
  System.out.println("cdoe:"+code);
  
  
  if ((null!=code)&& code.equals("gzip"))
  {
   GZIPInputStream gis = new GZIPInputStream(is);
   
   // 1K的数据缓冲
   byte[] bs = new byte[1024];
   // 读取到的数据长度
   int len;
   // 输出的文件流
   OutputStream os = new FileOutputStream(filename);
   // 开始读取
   while ((len = gis.read(bs)) != -1) {
    os.write(bs, 0, len);
   }
   // 完毕,关闭所有链接
   gis.close();
   os.close();
   is.close();
   
  }
  else
  {
   
   // 1K的数据缓冲
   byte[] bs = new byte[1024];
   // 读取到的数据长度
   int len;
   // 输出的文件流
   OutputStream os = new FileOutputStream(filename);
   // 开始读取
   while ((len = is.read(bs)) != -1) {
    os.write(bs, 0, len);
   }
   // 完毕,关闭所有链接
   os.close();
   is.close();
  }

 }

 

 

 

时间: 2024-11-01 14:17:07

java下载远程http地址的图片文件到本地-自动处理图片是否经过服务器gzip压缩的问题的相关文章

PHP批量下载html与css中图片文件实例

最近一直很忙,遇到一个手工活,需要下载一些远程的图片,一共一百多张,如果通过手工一张一张的保存,也太耗费时间了,于是上网google了一把,找到PHP批量下载图片文件的方法,原文是出自平凡世界博客的一片关于如何使用PHP批量下载CSS文件中的图片的文章.经过研究改写了一下就可以使用了,方便快捷多了. PHP批量下载图片文件代码:  代码如下 复制代码 set_time_limit(0);//设置PHP超时时间 $imagesURLArray = array_unique($imagesURLAr

java中getBytes方法可能使图片文件产生的问题

InputStream is = new FileInputStream(fl); ImageInputStream iis = ImageIO.createImageInputStream(is); Iterator<ImageReader> itImage = ImageIO.getImageReaders(iis); if(itImage.hasNext()){ ImageReader reader = itImage.next(); byte[] imageByte = new byt

iOS与Java服务器GZip压缩问题

昨天搞了一天的GZip压缩,试了三种方式(libz库,ZipArchive,ASIHttpRequest),一开始都不成功.理论上三个应该都能用的,但我都不行.等我试到第三种方式的时候才知道,不是我的问题,而是后台的问题(Java端输出方式一会再说).今天就总结一下,写写iOS与Java服务器获取压缩数据的方法吧.一.客户端-服务端数据压缩解压流程(ASIHttpRequest)客户端生成request,设置header允许使用压缩("Accept-Encoding","gz

FTP网站文件到本地的C#代码

using System.Net;using System.IO;using System.Text;using System.Net.Sockets; 调用示例: //调用开始:   FTPClient FtpNiuGames=new FTPClient();      FtpNiuGames.RemoteHost=textBox3.Text;   FtpNiuGames.RemoteUser=textBox5.Text;   FtpNiuGames.RemotePass=textBox6.T

Asp中利用xmlhttp下载远程图片、文件,并保存到本地

例2 二进制方式下载远程图片.文件,并保存到本地:  代码如下 复制代码 Private Function GetPicture(X) '获取图片数据     Set xml = Server.CreateObject("Microsoft.xmlhttp")     xml.Open "GET", X, False     xml.Send     GetPicture = xml.ResponseBody     Set xml=Nothing End Func

asp.net 如何下载远程的图片到本地文件夹,前提是不知道图片的个数和名称

问题描述 asp.net 如何下载远程的图片到本地文件夹,前提是不知道图片的个数和名称 想要将单反内的照片随时同步到本地文件夹内,该如何做呢,谢谢大神们,感激不尽 解决方案 远程服务器需要装东西,web的话可以部署个web服务,能返回某文件夹对象,并且图片所在文件夹要建立到1个网站里,目的是使它具有http网络资源的的访问地址:然后你本机弄个exe程序,用System.Net.WebClient类来下载资源文件到你本机,伪代码示例: 服务器的web服务 [webmethod] public Di

CssGaga教程:生成DataURI,抽取图片,下载远程css文件,图片无损压缩

文章简介:CssGaga教程:生成DataURI,抽取图片,下载远程css文件,图片无损压缩. CssGaga – 生成dataURI和MHTML Before: .base64{background-image:url('base64/logo.png');} .base64{border-image:url('base64/logo.png');} 注:要转换的图片文件所在base64文件夹与css同级且引用时为相对路径 After: .base64{background-image:url

利用xmlhttp和adodb.stream加缓存技术下载远程Web文件

ado|stream|web|xml|缓存|下载 研究了几天Adodb.stream和XMLHTTP的应用,找了不少很有趣的教程,下面的代码是将一个远程的页面,图片地址保存到本地的实例.将代码保存为一个.ASP的文件,将它放到IIS的一个目录下,在它的上级见一个cache目录,下载后的文件将保存到cache目录下 fso.Asp?path=logo.gif你就可以将logo.gif文件保存下来.学小偷的朋友也可以看看.. <%'----------远程获取内容,并将内容存在本地电脑上,包括任何文

通过PHP批量下载图片文件的方法

  近一直很忙,遇到一个手工活,需要下载一些远程的图片,一共一百多张,如果通过手工一张一张的保存,也太耗费时间了,于是上网google了一把,找到PHP批量下载图片文件的方法,原文是关于如何使用PHP批量下载CSS文件中的图片的文章.经过研究改写了一下就可以使用了,方便快捷多了. PHP批量下载图片文件代码: set_time_limit(0);//设置PHP超时时间 $imagesURLArray = array_unique($imagesURLArray ); foreach($image