HTTP协议实现文件下载
来源:互联网 发布:淘宝上的电子烟可靠吗 编辑:程序博客网 时间:2024/05/16 05:50
package com.dcfs.teller.event;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;/** * 从网络获取图片到本地 */public class GetImage { /** * 测试 * @param args */ public static void main(String[] args) { String url = "http://www.baidu.com/img/baidu_test.gif"; byte[] btImg = getImageByUrl(url); if(null != btImg && btImg.length > 0){ System.out.println("读取到:" + btImg.length + " 字节"); String fileName = "百度.gif"; writeImageToDisk(btImg, fileName); }else{ System.out.println("没有从该连接获得内容"); } } /** * 将图片写入到磁盘 * @param img 图片数据流 * @param fileName 文件保存时的名称 */ public static void writeImageToDisk(byte[] img, String fileName){ try { File file = new File("D:\\" + fileName); FileOutputStream fops = new FileOutputStream(file); fops.write(img); fops.flush(); fops.close(); System.out.println("图片已经写入到D盘"); } catch (Exception e) { e.printStackTrace(); } } /** * 根据地址获得数据的字节流 * @param strUrl 网络连接地址 * @return */ public static byte[] getImageByUrl(String strUrl){ try { URL url = new URL(strUrl); HttpURLConnection conn = (HttpURLConnection)url.openConnection(); conn.setRequestMethod("GET"); conn.setConnectTimeout(5 * 1000); InputStream inStream = conn.getInputStream();//通过输入流获取图片数据 byte[] btImg = readInputStream(inStream);//得到图片的二进制数据 return btImg; } catch (Exception e) { e.printStackTrace(); } return null; } /** * 从输入流中获取数据 * @param inStream 输入流 * @return * @throws Exception */ public static byte[] readInputStream(InputStream inStream) throws Exception{ ByteArrayOutputStream outStream = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len = 0; while( (len=inStream.read(buffer)) != -1 ){ outStream.write(buffer, 0, len); } inStream.close(); return outStream.toByteArray(); }}
阅读全文
1 0
- HTTP协议实现文件下载
- HTTP协议文件下载
- 基于HTTP协议用WinSock实现任意文件下载
- 基于HTTP协议用WinSock实现任意文件下载
- 利用HTTP协议实现文件下载的多线程断点续传
- 用java实现基于http协议的网络文件下载
- 用java实现基于http协议的网络文件下载
- 利用HTTP协议实现文件下载的多线程断点续传
- Java实现基于http协议的网络文件下载
- C#用HTTP协议实现多线程文件下载和断点续传
- Android实现基于http协议的文件下载
- 用 C# 实现 HTTP 协议多线程下载文件
- Java实现基于http协议的网络文件下载
- 使用HTTP协议 下载文件
- C++ HTTP协议 下载文件
- 使用HTTP协议下载文件
- 实现http文件下载
- [VB.NET]通过http协议下载文件
- ViewPager上加载Fragment
- JVM调优:选择合适的GC collector (二)
- memcahced介绍
- 自定义日历,随心所欲的打造自己的日历选择器
- 001-20161115-1光明解答读者无限关于“邪恶的生命生存与提升”的问题
- HTTP协议实现文件下载
- easyui select 动态添加 option
- W3C盒模型与IE盒模型
- Java邮件开发(一):使用JMail发送一封简单邮件
- 使用GET,POST请求获取结果
- appium工作原理
- easyui和zTree分别实现树型下拉框
- 操作符函数及重载(4)
- Eclipse的android工程修改目标设备