URL 获取网络资源

package com.itheima.net;

import java.io.BufferedInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
import java.net.URLConnection;

public class TextURL {

    /**
     * @param args
     * @throws Exception 
     */
    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub
        String imageFile="http://www.iteye.com/upload/logo/user/715302/3e63bcb1-8e77-369f-9e65-e97017c47322.jpg?1343613979";
        String htmlFile="http://takeme.iteye.com/";
        String host="http://www.iteye.com/";
        String file="/index.html";
        System.out.println("===============1.获取URL指定图像资源信息");
        getImageResourceByURL(imageFile);
        System.out.println("===============2.获取URL指定的HTML资源信息");
        getHtmlResourceByURL(htmlFile);
        System.out.println("===============3.根据URL创建读对象读取网页内容");
        getHTMLResouce(htmlFile);
        System.out.println("===============4.根据URL创建输入流读取网页内容");
        getResourceOfHtml(htmlFile);
        System.out.println("===============5.判断Java所支持的URL类型");
        supportURLType(host, file);
    }
    
    public static void getImageResourceByURL(String imageFile) throws Exception{
        URL url=new URL(imageFile); 
        Object obj=url.getContent(); //获得此URL的内容
        System.out.println(obj.getClass().getName());//显示名称
    }
    //根据制定的URL获取资源
    public static void getHtmlResourceByURL(String htmlFile) throws Exception{
        URL url=new URL(htmlFile);
        URLConnection uc=url.openConnection();  //创建远程对象的连接对象
        uc.setRequestProperty("Charset", "UTF-8");  //好像没有用  
        InputStream in=uc.getInputStream(); //打开连接 读取输入流
    
        int c;
        while ((c=in.read())!=-1) {
            System.out.print((char)c);
        }
        System.out.println();
        in.close();
    }
    
    //读取URL指定的网页内容
    public static void getHTMLResouce(String htmlFile) throws Exception{
        URL url=new URL(htmlFile);
        Reader reader=new InputStreamReader(new BufferedInputStream(url.openStream()),"UTF-8");
        int c;
        while ((c=reader.read())!=-1) {
            System.out.print((char)c);
            
        }
        System.out.println();
        reader.close();
        
    }
    //读取URL制定的网页内容
    public static void getResourceOfHtml(String htmlFile) throws Exception{
        URL url=new URL(htmlFile);
        
        InputStream in =url.openStream();
        int c;
        while ((c=in.read())!=-1) {
            System.out.print((char)c);
        }
        System.out.println();
        in.close();
    }
    
    public static void supportURLType(String host,String file){
        String [] schemes={"http","https","ftp","mailto","telnet","file","ldap",
                "gopher","jdbc","rmi","jndi","jar","doc","netdoc","nfs","verbatim","finger","daytime","systemrecource"};
        for (int i = 0; i < schemes.length; i++) {
            try {
                URL u=new URL(schemes[i],host,file);
                System.out.println(schemes[i]+"是java所支持的URL类型\r\n");
            } catch (Exception e) {
                System.out.println(schemes[i]+"不是java所支持的URL类型\r\n");
            }
        }
        
        
    }
    

}

 

posted on 2013-03-11 23:36  青春丶冭柔情  阅读(275)  评论(0编辑  收藏  举报

导航