0

这是一个示例 TCP/IP 服务器和客户端程序

TCP服务器

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

    class TCPServer
    {
       public static void main(String argv[]) throws Exception
          {
             String clientSentence;
             String capitalizedSentence;
             ServerSocket welcomeSocket = new ServerSocket(6789);

             while(true)
             {
                Socket connectionSocket = welcomeSocket.accept();
                BufferedReader inFromClient =
                   new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
                DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());
                clientSentence = inFromClient.readLine();
                System.out.println("Received: " + clientSentence);
                capitalizedSentence = clientSentence.toUpperCase() + '\n';
                outToClient.writeBytes(capitalizedSentence);
             }
          }
    } 

TCP客户端

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

class TCPClient
{
 public static void main(String argv[]) throws Exception
 {
  String sentence;
  String modifiedSentence;
  BufferedReader inFromUser = new BufferedReader( new InputStreamReader(System.in));
  Socket clientSocket = new Socket("localhost", 6789);
  DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
  BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
  sentence = inFromUser.readLine();
  outToServer.writeBytes(sentence + '\n');
  modifiedSentence = inFromServer.readLine();
  System.out.println("FROM SERVER: " + modifiedSentence);
  clientSocket.close();
 }
}

在该客户端中,我需要将文本 hi 发送到服务器。一旦服务器从客户端读取文本 Hi 它显示客户端 ID 和文本现在是活动的

4

1 回答 1

0

使用socket.getInetAddress()获取包含 IP 地址的InetAddress对象,然后调用InetAddress.getHostAddress()以将其作为字符串获取。

于 2012-09-14T05:21:11.693 回答