Java实现网络监听

  //tcpServer.java由fpont 3/2000
  //用法:java tcpServer<端口号>。
  //默认端口为1500。
  //由客户端关闭的连接。
  //该服务器仅处理1个连接。
  导入java.net.*;
  导入java.io.*;
  公共类tcpServer{
  公共静态void main(String args[]){
  int port;
  ServerSocket服务器套接字;
  BufferedReader输入;
  尝试{
  port=Integer.parseInt(args[0]);
  }
  catch(Exception e){
  System.out.println("端口=1500(默认)");
  端口=1500;
  }
  尝试{
  server_socket=new ServerSocket(port);
  System.out.println("服务器在端口上等待客户端"+
  server_socket.getLocalPort());
  //服务器无限循环
  while(true){
  Socket socket=server_socket.accept();
  System.out.println("已接受新连接"+
  socket.getInetAddress()+
  ":"+socket.getPort());
  输入=new BufferedReader(new InputStreamReader(socket.getInputStream()));
  //打印接收到的数据
  try{
  while(true){
  String message=input.readLine();
  如果(消息==空)中断;
  System.out.println(消息);
  }
  }
  catch(IOException e){
  System.out.println(e);
  }
  //连接被客户端关闭
  try{
  socket.close();
  System.out.println("连接被客户端关闭");
  }
  catch(IOException e){
  System.out.println(e);
  }
  }
  }
  catch(IOException e){
  System.out.println(e);
  }
  }
  }
  //tcpClient.java by fpont 3/2000
  //用法:java tcpClient<server><port>
  //默认端口为1500
  import java.net.*;
  导入java.io.*;
  公共类tcpClient{
  公共静态void main(String[]args){
  int port=1500;
  字符串服务器=“本地主机”;
  套接字套接字=空;
  待发送字符串;
  BufferedReader输入;
  PrintWriter输出;
  整数错误=1;
  //读取参数
  if(args.length==2){
  server=args[0];
  尝试{
  port=Integer.parseInt(args[1]);
  }
  catch(Exception e){
  System.out.println("服务器端口=1000(默认)");
  端口=1500;
  }
  }
  //连接到服务器
  try{
  socket=new Socket(server,port);
  System.out.println("已与服务器连接"+
  socket.getInetAddress()+
  ":"+socket.getPort());
  }
  catch(UnknownHostException e){
  System.out.println(e);
  系统退出(错误);
  }
  catch(IOException e){
  System.out.println(e);
  系统退出(错误);
  }
  尝试{
  input=new BufferedReader(new InputStreamReader(System.in));
  输出=new PrintWriter(socket.getOutputStream(),true);
  //获取用户输入并将其传输到服务器
  while(true){
  lineToBeSent=input.readLine();
  //如果输入行是“.”则停止
  if(lineToBeSent.equals("."))中断;
  输出.println(待发送行);
  }
  }
  catch(IOException e){
  System.out.println(e);
  }
  尝试{
  socket.close();
  }
  catch(IOException e){
  System.out.println(e);
  }}
  }