java从服务器下载图片怎么讲图片保存到本地的sdcard上

java从服务器下载图片怎么讲图片保存到本地的sdcard上,第1张

ublic HttpServletResponse download(String path, HttpServletResponse response) {

try {

// path是指欲下载的文件路径

File file = new File(path)

// 取得文件名。

String filename = file.getName()

// 取得文件的后缀名。

String ext = filename.substring(filename.lastIndexOf(".") + 1).toUpperCase()

// 以流的形式下载文件。

InputStream fis = new BufferedInputStream(new FileInputStream(path))

byte[] buffer = new byte[fis.available()]

fis.read(buffer)

fis.close()

// 清空response

response.reset()

// 设置response的Header

response.addHeader("Content-Disposition", "attachmentfilename=" + new String(filename.getBytes()))

response.addHeader("Content-Length", "" + file.length())

OutputStream toClient = new BufferedOutputStream(response.getOutputStream())

response.setContentType("application/octet-stream")

toClient.write(buffer)

toClient.flush()

toClient.close()

} catch (IOException ex) {

ex.printStackTrace()

}

return response

}

会不会是多线程同时下载一张图片?

inputStream = conn.getInputStream()

如果有两个线程同时将这个流写入到指定文件应该就会出错了吧!

之前写一个下载APK文件会出现APK解析错误,借此思路,希望能帮到你!~

java编程方法下载服务器上的文件到本地客服端,代码如下:

import java.io.BufferedWriter

import java.io.File

import java.io.FileOutputStream

import java.io.FileWriter

import java.io.IOException

import java.io.InputStream

import java.net.URL

import java.net.URLConnection

 

public class DownLoad {   

 public static void downloadFile(URL theURL, String filePath) throws IOException {  

   File dirFile = new File(filePath)

      if(!dirFile.exists()){ 

        //文件路径不存在时,自动创建目录

        dirFile.mkdir()

      }

  //从服务器上获取图片并保存

     URLConnection connection = theURL.openConnection()

     InputStream in = connection.getInputStream()  

     FileOutputStream os = new FileOutputStream(filePath+"\\123.png") 

     byte[] buffer = new byte[4 * 1024]  

     int read  

     while ((read = in.read(buffer)) > 0) {  

        os.write(buffer, 0, read)  

          }  

       os.close()  

       in.close()

  }   

     public static void main(String[] args) { 

      //下面添加服务器的IP地址和端口,以及要下载的文件路径

      String urlPath = "http://服务器IP地址:端口/image/123.png" 

      

      //下面代码是下载到本地的位置

      String filePath = "d:\\excel" 

  

      URL url = new URL(urlPath) 

  

          try { 

  

             downloadFile(url,filePath) 

  

           } catch (IOException e) { 

  

            e.printStackTrace() 

  

         } 

  

      }   

}


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/327027.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存