Java从 URL 读取 GIF 将其保存在本地

import java.io.*;
import java.net.*;

public class SuckURL {
	String aFile;
	String aURL;

	public static void main(String args[]) {
		// GIF JAVA How-to at Real's Home
		String url = "https://gifimage.net/wp-content/uploads/2017/08/";
		SuckURL b = new SuckURL(url, "whatsapp-gif-download-3.gif");
		b.doit();
	}

	SuckURL(String u, String s) {
		aURL = u;
		aFile = s;
	}

	public void doit() {
		DataInputStream di = null;
		FileOutputStream fo = null;
		byte[] b = new byte[1];

		try {
			System.out.println("Sucking " + aFile);
			System.out.println("   at " + aURL);
			// input
			URL url = new URL(aURL + aFile);
			URLConnection urlConnection = url.openConnection();
			urlConnection.connect();
			di = new DataInputStream(urlConnection.getInputStream());

			// output
			fo = new FileOutputStream(aFile);

			// copy the actual file
			// (it would better to use a buffer bigger than this)
			while (-1 != di.read(b, 0, 1))
				fo.write(b, 0, 1);
			di.close();
			fo.close();
		} catch (Exception ex) {
			System.out.println("Oups!!!");
			ex.printStackTrace();
			System.exit(1);
		}
		System.out.println("done.");
	}
}

此示例使用 HTTPS 协议转储页面:

import java.io.*;
import java.net.*;

public class URLReader {
	public static void main(String[] args) throws Exception {
		// no longer necessary since JSSE is now included in
		// recent jdk release...
		// Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
		// System.setProperty("java.protocol.handler.pkgs",
		// "com.sun.net.ssl.internal.www.protocol");

		URL url = new URL("https://www.thawte.com");
		HttpURLConnection con = (HttpURLConnection) url.openConnection();

		BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
		String inputLine;

		while ((inputLine = in.readLine()) != null)
			System.out.println(inputLine);
		in.close();
	}
}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值