java基础之网络(InetAdress、URL)
2015-11-25 14:07
549 查看
一)java中的网络支持
针对网络通信的不同层次,java提供的网络功能四大类:
1、InetAdress:用于标识网络上的硬件资源
2、URL:统一资源定位符 通过URL可以直接读取或者写入网络上的数据
3、Sockets:使用TCP协议实现网络通信的Socket相关的类
4、Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信
二)
返回本地主机。
获取此 IP 地址的主机名。
三)URL(Uniform Resource Locator)
2)由两部分组成:协议名称和资源名称,中间用冒号隔开
3)在java.net包中,提供了URL类来表示URL
根据
4)使用URL读取网页内容1、通过URL对象的openStream()方法可以得到指定资源的输入流
打开到此
针对网络通信的不同层次,java提供的网络功能四大类:
1、InetAdress:用于标识网络上的硬件资源
2、URL:统一资源定位符 通过URL可以直接读取或者写入网络上的数据
3、Sockets:使用TCP协议实现网络通信的Socket相关的类
4、Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信
二)
InetAddress : 此类表示互联网协议 (IP) 地址。
public static InetAddress getLocalHost() throws UnknownHostException
返回本地主机。
public String getHostName()
获取此 IP 地址的主机名。
// 获取本机的InetAddress实例 InetAddress address = InetAddress.getLocalHost(); System.out.println("计算名:" + address.getHostName()); System.out.println("IP地址:" + address.getHostAddress()); byte[] bytes = address.getAddress();// 获取字节数组形式的IP地址 System.out.println("字节数组形式的IP:" + Arrays.toString(bytes)); System.out.println(address); // 直接输出InetAddress对象 // 根据机器名获取InetAddress实例 // InetAddress address2 = InetAddress.getByName("101.105.144.9"); InetAddress address2 = InetAddress.getByName("wassili"); System.out.println("计算名:" + address2.getHostName()); System.out.println("IP地址:" + address2.getHostAddress());
三)URL(Uniform Resource Locator)
1)URL代表一个统一资源定位符,它是指向互联网“资源”的指针。
2)由两部分组成:协议名称和资源名称,中间用冒号隔开
3)在java.net包中,提供了URL类来表示URL
public URL(String spec) throws MalformedURLException
根据
String表示形式创建
URL对象
try {
//创建一个URL实例URL csdn = new URL("http://blog.csdn.net");URL url = new URL(csdn, "/wassili520?username=tom#test");
System.out.println("协议:"+ url.getProtocol());
System.out.println("主机:"+ url.getHost());
//如果未指定端口号,则使用默认的端口号,此时getPort()方法返回值为-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();
}
4)使用URL读取网页内容1、通过URL对象的openStream()方法可以得到指定资源的输入流
public final InputStream openStream() throws IOException
打开到此
URL的连接并返回一个用于从该连接读入的
InputStream。此方法是下面方法的缩写:
openConnection().getInputStream()
try {
//创建一个URL实例URL url = new URL("http://www.baidu.com");
//通过URL的openStream方法获取URL对象所表示的资源的字节输入流
InputStream is = url.openStream();
//将字节输入流转换为字符输入流
InputStreamReader isr = new InputStreamReader(is,"UTF-8");
//为字符输入流添加缓冲
BufferedReader br = new BufferedReader(isr);
String data = br.readLine();//读取数据
while (data != null) {//循环读取数据
System.out.println(data);//输出数据
data = br.readLine();
}
br.close();
isr.close();
is.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
相关文章推荐
- java-用HttpURLConnection发送Http请求.
- VBScript 剪贴板抓取URL并在浏览器中打开
- 用vbs 实现从剪贴板中抓取一个 URL 然后在浏览器中打开该 Web 站点
- asp获取URL参数的几种方法分析总结[原创]_应用技巧_脚本之家
- zend framework框架中url大小写问题解决方法
- url decode problem 解决方法
- php url地址栏传中文乱码解决方法集合
- 探讨:parse url解析URL,返回其组成部分
- C#实现自动识别URL网址的方法
- C#自定义针对URL地址的处理类实例
- JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
- ASP让url的中文显示为编码
- JS使用ajax方法获取指定url的head信息中指定字段值的方法
- 关于URL中的特殊符号使用介绍
- JS来动态的修改url实现对url的增删查改
- js url传值中文乱码之解决之道
- JavaScript操作URL的相关内容集锦
- jquery获取url参数及url加参数的方法
- 通过url查找a元素并点击
- 简单实例处理url特殊符号&处理(2种方法)