1、URL概述
URL(uniform resource location)类代表一个统一资源占位符,它是指互联网“资源”的指针。
抽象类URLConnection是所有类的超类,它代表应用程序和URL之间的通信链接。
代码示例:
package com.lemon.URLDemo;
import jdk.nashorn.internal.ir.BaseNode;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
/**
* URL:
* 统一资源定位符
* @author lemonsun
*/
public class URLTest {
public static void main(String[] args) {
try {
//统一资源定位符 //需要下载的目标地址
URL url = new URL("http://p1.so.qhimgs1.com/bdr/592__/t01a9f7f11254e3cffd.jpg");
//强行转换为http
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
/*上述可以直接用 url.openStream() */
//缓冲输入流
BufferedInputStream bin = new BufferedInputStream(connection.getInputStream());
//输出缓冲流 保持到 F:\mm.jpg
BufferedOutputStream bout = new BufferedOutputStream(
new FileOutputStream("F:\\mm.jpg"));
//读取数据
byte[] bytes = new byte[1024];
int len = -1;
while ((len = bin.read(bytes)) != -1){
bout.write(bytes,0,len); //输出 写入到文件
bout.flush();//刷新
}
bin.close();
bout.close();
System.out.println("下载成功!");
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}