URL类与URLConnection类使用代码演示

xiaoxiao2025-10-02  5

URL类演示

URLDemo程序演示这些方法的使用以及一个URL的不同部分

/*URLDemo.java *演示URL类的用法。 */ package ch18; import java.net.*; import java.io.*; public class URLDemo { public static void main(String[] args) { try { URL url = new URL ("http://www.lovoinfo.com/courseware/index.html?title=btw#mid"); System.out.println("URL为:" + url.toString()); System.out.println("协议为:" + url.getProtocol()); System.out.println("授权部分为: " + url.getAuthority()); System.out.println("文件名为:" + url.getFile()); System.out.println("主机为:" + url.getHost()); System.out.println("路径为:" + url.getPath()); System.out.println("端口为" + url.getPort()); System.out.println("默认端口为:" + url.getDefaultPort()); System.out.println("查询字符串为:" + url.getQuery()); System.out.println("引用锚点为:" + url.getRef()); } catch (IOException e) { e.printStackTrace(); } } }

效果如下图:

 

下面演示了如何读取网页并保存在本地html文件中

package com.work.net.url; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.URL; import com.work.net.util.CloseUtil;//这个工具类只是我写来用于关流的 public class URLDemo02 { public static void main(String[] args) { URL url = null; BufferedWriter writer = null; BufferedReader reader = null; String path = "d://files/baidu.html"; try { File file = new File(path); url = new URL("http://www.baidu.com"); //通过该url去获取具体的输入流 reader = new BufferedReader(new InputStreamReader(url.openStream(), "utf-8")); writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file))); int lenth = 0; char [] data = new char[1024]; //边读边写 while((lenth = reader.read(data)) != -1) { writer.write(data, 0, lenth); } writer.flush(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { CloseUtil.closeIO(writer,reader); } } }

 

URLConnection类演示

URLConnectionDemo程序连接到一个URL(http://www.lovoinfo.com),然后读出网站首页的信息。

/*URLConnectionDemo.java * URLConnection使用演示 */ package ch18; import java.net.*; import java.io.*; public class URLConnectionDemo { public static void main(String[] args) { try { URL url = new URL("http://www.sanxuau.com"); URLConnection urlConnection = url.openConnection(); HttpURLConnection connection = null; if (urlConnection instanceof HttpURLConnection) { connection = (HttpURLConnection) urlConnection; } else { System.out.println("请输入一个HTTP URL。"); return; } BufferedReader in = new BufferedReader(new InputStreamReader( connection.getInputStream())); String urlString = ""; String current; while ((current = in.readLine()) != null) { urlString += current; } System.out.println(urlString); } catch (IOException e) { e.printStackTrace(); } } }

 

 

 

转载请注明原文地址: https://www.6miu.com/read-5037217.html

最新回复(0)