Java 版 (精华区)
发信人: DreamWeaver (我是流氓,我谁都怕), 信区: Java
标 题: Java Socket编程(二)-2
发信站: 哈工大紫丁香 (2002年08月17日10:33:34 星期六), 站内信件
在Java中面向连接的类有两种形式,它们分别是客户端和服务器端.客户端这一部分
是最简单的,所以我们先讨论它.
列表9.1列出了一个简单的客户端的程序. 它向一个服务器发出一个请求,取回一个
HTML文档,并把它显示在控制台上.
9.1一个简单的socket客户端
import java.io.*;
import java.net.*;
/**
* 一个简单的从服务器取回一个HTML页面的程序
* 注意:merlin是本地机器的名字
*/
public class SimpleWebClient {
public static void main(String args[]){
try{
// 打开一个客户端socket连接
Socket clientSocket1 = new Socket("merlin", 80);
System.out.println("Client1: " + clientSocket1);
// 取得一个网页
getPage(clientSocket1);
}catch (UnknownHostException uhe){
System.out.println("UnknownHostException: " + uhe);
}catch (IOException ioe){
System.err.println("IOException: " + ioe);
}
}
/**
*通过建立的连接请求一个页面,显示回应然后关闭socket
*/
public static void getPage(Socket clientSocket){
try{
// 需要输入和输出流
DataOutputStream outbound = new DataOutputStream(
clientSocket.getOutputStream() );
DataInputStream inbound = new DataInputStream(
clientSocket.getInputStream() );
// 向服务器发出HTTP请求
outbound.writeBytes("GET / HTTP/1.0 ");
// 读出回应
String responseLine;
while ((responseLine = inbound.readLine()) != null){
// 把每一行显示出来
System.out.println(responseLine);
if ( responseLine.indexOf("") != -1 )
break;
}
// 清除
outbound.close();
inbound.close();
clientSocket.close();
}catch (IOException ioe){
System.out.println("IOException: " + ioe);
}
}
}
--
忘掉她,忘掉她就可以不必再忍受,忘掉她就不再有痛苦。忘掉她,忘掉
你没有的东西,忘掉别人有的东西,忘掉你失去和以后不能得到的东西,忘掉
仇恨,忘掉屈辱,忘掉爱情,象犀牛忘掉草原,象水鸟忘掉湖泊,象地狱里的
人忘掉天堂,象截肢的人忘掉自己曾快步如飞,象落叶忘掉风,象公犀牛忘掉
母犀牛。忘掉是一般人能做的唯一的事。但是我决定不忘掉她。 你看到我的妮妮了吗? Q_Q
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.239.4]
※ 修改:·DreamWeaver 於 08月17日10:41:46 修改本文·[FROM: 202.118.239.4]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.248毫秒