您的位置:首页 > 编程语言 > Java开发

Java通信编程之Socket入门

2008-08-02 14:18 381 查看
Java通信编程之Socket入门

/**

* @(#)ClientTest.java

*

* 客户端

* @author

* @version 1.00 2008/8/2

*/

import java.net.Socket;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.BufferedReader;

import java.io.PrintWriter;

public class ClientTest {

private Socket socket;

BufferedReader in;

PrintWriter out;

public ClientTest() {

try{

System.out.println("Try to connect to 127.0.0.1:10000");

//向服务器发出连接请求

socket=new Socket("127.0.0.1",10000);

System.out.println("The Server Connected!");

System.out.println("Please enter some characters:");

//读取用户输入信息

BufferedReader line=new BufferedReader(new InputStreamReader(System.in));

//输出从服务器端获得的信息

out=new PrintWriter(socket.getOutputStream(),true);

out.println(line.readLine());

//读取服务器端信息

in=new BufferedReader(new InputStreamReader(socket.getInputStream()));

System.out.println(in.readLine());

out.close();

in.close();

socket.close();

}catch(IOException ex){

System.out.println(ex.getMessage());

}

}

public static void main(String[] args){

new ClientTest();

}

}

/**

* @(#)ServerSocketTest.java

*

* 服务器端

* @author

* @version 1.00 2008/8/2

*/

import java.net.ServerSocket;

import java.net.Socket;

import java.io.IOException;

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.io.PrintWriter;

public class ServerSocketTest {

private ServerSocket ss;

private Socket socket;

private BufferedReader in;

private PrintWriter out;

public ServerSocketTest() {

try{

ss=new ServerSocket(10000);//建立服务器,监听...

System.out.println("Server is listening at 10000...");

while(true){

socket=ss.accept();

//获取客户端IP地址

String remoteIP=socket.getInetAddress().getHostAddress();

//获取客户端连接端口

String remotePort=":"+socket.getLocalPort();

System.out.println("A clinet come in!IP:"+remoteIP+remotePort);

//读取客户端输入

in=new BufferedReader(new InputStreamReader(socket.getInputStream()));

String line=in.readLine();

System.out.println("Client send is:"+line);

//将服务器端信息发往客户端

out=new PrintWriter(socket.getOutputStream(),true);

out.println("Your Message Received!");

out.close();

in.close();

socket.close();

}

}catch(IOException ex){

System.out.println(ex.getCause());

}

}

public static void main (String[] args) {

new ServerSocketTest();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: