java读取网页



package com.javabase.sss;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

import java.net.MalformedURLException;
import java.net.URL;

public class Kpp {

	/**
	 * 
	 * @author 热带雨林
	 * 2019年5月10日
	 * @param urlstr 网页地址
	 * @param fileName 需要保存的文件名全路径
	 * @throws IOException
	 * void
	 */
	public static void readHttp(String urlstr,String fileName) throws IOException{

		//装饰器 缓存读取
		BufferedReader bReader = null;
		File f = new File(fileName);
		if(!f.exists()) {
			try {
				f.createNewFile();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		//文件输出流
		FileOutputStream fout = new FileOutputStream(f);
		//写入流
		OutputStreamWriter myWriter = new OutputStreamWriter(fout);
		//输入流
		InputStreamReader myReader = null;
		StringBuffer sbuf =new StringBuffer();
		//URL对象
		URL url = new URL(urlstr);
						//输入流
			myReader = new InputStreamReader(url.openStream(),"utf-8");
			//把输入流放到装饰器 缓存读取
			bReader = new BufferedReader(myReader);
			String s = null;
			//按行读取网页
			while((s = bReader.readLine()) != null ) {
			
				sbuf.append(s);
			}
			//写入到文件
			myWriter.write(sbuf.toString());
			
			System.out.println("完成");

			bReader.close();
			myReader.close();
			myWriter.close();

	}

	public static void main(String[] args){
		String url = "https://www.hao123.com/index.html";
		String fileName = "C:/333.txt";
		try {
			readHttp(url,fileName);
		} catch (IOException e) {
			e.printStackTrace();
		}
		
	}

}




猜你喜欢

转载自blog.csdn.net/qq_43314793/article/details/90084570