<Java 网络基础知识>学习日志(二)——URL
博客专区 > WhuBit 的博客 > 博客详情
<Java 网络基础知识>学习日志(二)——URL
WhuBit 发表于1年前
<Java 网络基础知识>学习日志(二)——URL
  • 发表于 1年前
  • 阅读 2
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

package 网络基础知识;

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

public class URLTest {
	/*
	 * 2016/11/19
	 * URL测试
	 * URL:统一资源定位符,表示Inernet上某一资源的地址
	 * 由两部分组成:协议名称和资源名称,中间用冒号隔开
	 * java,net包中提供了URL类
	 */

	public static void main(String[] args) {
		try {
			//创建一个URL实例
			URL immoc=new URL("http://www.imooc.com");
			//利用已有的URL创建新的URL,?后面表示参数,#后面表示锚点
			URL url=new URL(immoc, "index.html?username=tom#test");
			System.out.println("协议:"+url.getProtocol());
			System.out.println("主机"+url.getHost());
			//http默认使用80端口,该类没有指定端口号,则根据协议不同使用默认端口号,使用默认端口则返回-1
			System.out.println("端口:"+url.getPort());
			System.out.println("文件路径"+url.getPath());
			System.out.println("文件名:"+url.getFile());
			System.out.println("相对路径:"+url.getRef());
			System.out.println("查询字符串:"+url.getQuery());
			
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}


	}

}

package 网络基础知识;

import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.MalformedURLException;
import java.net.URL;

public class URLPest {

	/*
	 * 使用URL获取网页内容
	 */
	public static void main(String[] args) {
		try {
			//创建一个URL实例
			URL url=new URL("http://www.baidu.com");
			//获取字节输入流
            InputStream is=url.openStream();
            //将字节输入流转化为字符输入流
            InputStreamReader isr=new InputStreamReader(is,"UTF-8");//!!!:有乱码,需改变编码方式
            //为字符输入流加缓冲
            BufferedReader br=new BufferedReader(isr);
            
            //创建PrintWriter
            File dest=new File("dest.html");
            if(!dest.exists())
            	dest.createNewFile();
            PrintWriter pw=new PrintWriter(dest);
            
            String data=br.readLine();
            while(data!=null){
            	pw.write(data);
            	pw.flush();//刷新缓冲区,写入数据
            	data=br.readLine();//输入数据
            }
            
            //关闭资源
            pw.close();
            is.close();
            isr.close();
            br.close();
        } catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		

	}

}
共有 人打赏支持
粉丝 1
博文 12
码字总数 4328
×
WhuBit
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: