根据URL下载图片至客户端、服务器的简单实例_java

1、保存至服务器

根据路径保存至项目所在服务器上。

String imgUrl="";//图片地址
    try {
      // 构造URL
      URL url = new URL(imgUrl);
      // 打开连接
      URLConnection con = url.openConnection();
      // 输入流
      InputStream is = con.getInputStream();
      // 1K的数据缓冲
      byte[] bs = new byte[1024];
      // 读取到的数据长度
      int len;
      // 输出的文件流
      OutputStream os = new FileOutputStream("c:\\image.jpg");//保存路径
      // 开始读取
      while ((len = is.read(bs)) != -1) {
        os.write(bs, 0, len);
      }
      // 完毕,关闭所有链接
      os.close();
      is.close();
    } catch (MalformedURLException e) {
      e.printStackTrace();
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }

2、保存至本地

以浏览器下载的方式保存至本地。

String imgUrl="";//URL地址
    String fileName = imgUrl.substring(imgUrl.lastIndexOf('/') + 1);
    BufferedInputStream is = null;
    BufferedOutputStream os = null;
    try {
      URL url = new URL(imgUrl);
      this.getServletResponse().setContentType("application/x-msdownload;");
      this.getServletResponse().setHeader("Content-disposition", "attachment; filename=" + new String(fileName.getBytes("utf-8"), "ISO8859-1"));
      this.getServletResponse().setHeader("Content-Length", String.valueOf(url.openConnection().getContentLength()));
      is = new BufferedInputStream(url.openStream());
      os = new BufferedOutputStream(this.getServletResponse().getOutputStream());
      byte[] buff = new byte[2048];
      int bytesRead;
      while (-1 != (bytesRead = is.read(buff, 0, buff.length))) {
        os.write(buff, 0, bytesRead);
      }
      if (is != null)
        is.close();
      if (os != null)
        os.close();
    } catch (MalformedURLException e) {
      e.printStackTrace();
    } catch (UnsupportedEncodingException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }

以上这篇根据URL下载图片至客户端、服务器的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索tcp客户端和服务器端、服务器和客户端的区别、客户端服务器、客户端与服务器通信、udp服务器端和客户端,以便于您获取更多的相关知识。

时间: 2024-12-02 16:35:49

根据URL下载图片至客户端、服务器的简单实例_java的相关文章

Objective C从远程url下载图片方法汇总

  本文给大家分享了2则使用Objective C从远程url下载图片的方法,都是个人项目中使用的,汇总下推荐给大家,有需要的小伙伴可以参考下. Objective C从远程url下载图片 ? 1 2 3 4 5 6 7 8 - (UIImage *) getImageFromURL: (NSString *)theURL { UIImage *theImage = NULL; NSString *imageFileName = [BT_strings getFileNameFromURL:th

代码-安卓用URL下载图片怎么老是下载不了呀。

问题描述 安卓用URL下载图片怎么老是下载不了呀. 安卓用URL下载图片怎么老是下载不了呀.联网后老是Connection timed out: connect,启动不了,代码跟书上一样那个MODE那个却自动划掉 解决方案 解决方案二: 解决方案三: new Thread(){ public void run() { try{ Thread.sleep(500);//休眠一下试试吧,不要在Oncreate中不休眠直接启动线程 System.out.println("222"); } }

java 下载 url-使用java通过URL下载图片不正常

问题描述 使用java通过URL下载图片不正常 http://zcimg.zcool.com.cn/zcimg/m_c6fe5449f86a0000016004e746c6.jpg 第一条地址可以正确下到图片http://www.zcool.com.cn/img.html#src=/zcimg/905054488bb700000160049caba7.jpg 第二条地址下载下来的图片只有1KB且打不开 怀疑是不是#src的问题 下载代码 public static void downloadIm

Objective C从远程url下载图片方法汇总_IOS

Objective C从远程url下载图片 - (UIImage *) getImageFromURL: (NSString *)theURL { UIImage *theImage = NULL; NSString *imageFileName = [BT_strings getFileNameFromURL:theURL]; NSData *imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:theUR

php下载文件,添加响应头的简单实例_php实例

如下所示: //下载,添加响应头信息 header('Content-type:application/octet-stream'); header('Content-Disposition:attachment;filename="'.basename($file).'"'); header('Content-Length:'.filesize($file)); readfile($file); 以上就是小编为大家带来的php下载文件,添加响应头的简单实例的全部内容了,希望对大家有所

php下载文件,添加响应头的简单实例

如下所示: //下载,添加响应头信息 header('Content-type:application/octet-stream'); header('Content-Disposition:attachment;filename="'.basename($file).'"'); header('Content-Length:'.filesize($file)); readfile($file); 以上就是小编为大家带来的php下载文件,添加响应头的简单实例的全部内容了,希望对大家有所

Mac OS上安装Tomcat服务器的简单步骤_java

一. 下载tomcat 首先要到tomcat官网去下载安装包,官网下载地址如下:http://tomcat.apache.org/download-70.cgi , 注意请下载飞windows版本.和windows操作系统不一样,这个里面没有令人厌烦的注册表. 将压缩包解压到任意一个目录,我这里是存放到/ProgramFile/tomcat 目录下面   二. 修改授权 tomcat中的几个运行服务程序都是以*.sh结尾的,在运行之前需要授权.打开终端输入如下命令: 输入如下命令: sudo c

Java如何从服务器中下载图片_java

本文实例为大家分享了Java服务器中下载图片的方法,供大家参考,具体内容如下 import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.URL; import java.net.URLConnection; import org.apache.commons.io.IOUtils; /** * 从服务器中下载图片 * * @param fileName

用微信js-sdk接口下载图片总报错invalid media_id

问题描述 用微信js-sdk接口下载图片总报错invalid media_id 我用微信的js-sdk接口的wx.chooseImage选择图片,用wx.uploadImage上传图片,再用http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID上传下载多媒体文件接口下载图片到本地服务器,可总是报错{"errcode":40007,"errms