如何付款 | 地理位置 | 帮助中心
 
 
 
网络编程-用Java实现网络监听的源代码
网络  发表时间 2006-8-25

// tcpServer.java by fpont 3/2000

// usage : java tcpServer .
// default port is 1500.
// connection to be closed by client.
// this server handles only 1 connection.

import java.net.*;
import java.io.*;

public class tcpServer {
   
    public static void main(String args[]) {

 int port;
 ServerSocket server_socket;
 BufferedReader input;
 try {
     port = Integer.parseInt(args[0]);
 }
 catch (Exception e) {
     System.out.println("port = 1500 (default)");
     port = 1500;
 }

 try {
     server_socket = new ServerSocket(port);
     System.out.println("Server waiting for client on port " +
          server_socket.getLocalPort());
     // server infinite loop
     while(true) {
  Socket socket = server_socket.accept();
  System.out.println("New connection accepted " +
       socket.getInetAddress() +
       ":" + socket.getPort());
  input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
  // print received data
  try {
      while(true) {
   String message = input.readLine();
   if (message==null) break;
   System.out.println(message);
      }
  }
  catch (IOException e) {
      System.out.println(e);
  }
  
  // connection closed by client
  try {
      socket.close();
      System.out.println("Connection closed by client");
  }
  catch (IOException e) {
      System.out.println(e);
  }
     }
 } 
 catch (IOException e) {
     System.out.println(e);
 }
    }
}

 

 

// tcpClient.java by fpont 3/2000

// usage : java tcpClient
// default port is 1500

import java.net.*;
import java.io.*;

public class tcpClient {

 

    public static void main(String[] args) {

 int port = 1500;
 String server = "localhost";
 Socket socket = null;
 String lineToBeSent;
 BufferedReader input;
 PrintWriter output;
 int ERROR = 1;

 // read arguments
 if(args.length == 2) {
     server = args[0];
     try {
  port = Integer.parseInt(args[1]);
     }
     catch (Exception e) {
  System.out.println("server port = 1000 (default)");
  port = 1500;
     }
 }

 

 // connect to server
 try {
     socket = new Socket(server, port);
     System.out.println("Connected with server " +
       socket.getInetAddress() +
       ":" + socket.getPort());
 }
 catch (UnknownHostException e) {
     System.out.println(e);
     System.exit(ERROR);
 }
 catch (IOException e) {
     System.out.println(e);
     System.exit(ERROR);
 }

 

 try {
     input = new BufferedReader(new InputStreamReader(System.in));
     output = new PrintWriter(socket.getOutputStream(),true);

     // get user input and transmit it to server
     while(true) {
  lineToBeSent = input.readLine();
  // stop if input line is "."
  if(lineToBeSent.equals(".")) break;
  output.println(lineToBeSent);
     }
 }
 catch (IOException e) {
     System.out.println(e);
 }

 try {
     socket.close();
 }
 catch (IOException e) {
     System.out.println(e);
 }
    }
}

关键词:网络编程、Java、上海网站建设、专业网站建设、网站制作、网站推广服务
 

-->更多相关新闻
版权所有©2005 上海巧创网络技术有限公司 沪 ICP 备 05001802 号
网络实名: 上海网站建设上海网络公司上海仓存管理软件 电话: 021-50757260 50769776 50758883 传真: 50757260-14
地址:上海市浦东枣庄路 683 号(金杨经济服务中心) 6 楼 邮编 :201206 E-mail:webmaster@soeasy.cn