以下是客户端向服务器传送字符串,但服务器总接收不到,服务器的输入流总返回-1(即已到流末尾),求帮忙服务器端:
import java.net.*;
import java.io.*;
import javax.swing.*;public class Server extends JFrame
{
   private JTextArea jtaLog;
   
   Server()
   {
     jtaLog = new JTextArea();
     add(jtaLog);
   }
   
   public void start()
   {
    try
    {
      ServerSocket server = new ServerSocket(8000);
      jtaLog.append("服务器开启\n");
      Socket client = server.accept();
      BufferedReader clientReader = new BufferedReader(new InputStreamReader(client.getInputStream()));
      char[] bufChars = new char[100];
      int len = 0;
      len = clientReader.read(bufChars));                    //len是 -1.即已经到达流的末尾
      System.out.println(len);
      String message = new String(bufChars,0,len);
      jtaLog.append(message + "\n");
    }
    catch(IOException ex)
    {
      ex.printStackTrace();
    }
   }
   
   public static void main(String[] args)
   {
      Server frame = new Server();
      frame.setTitle("服务器端");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(400,300);
      frame.setVisible(true);
      frame.start();
   }
}
客户端:import java.net.*;
import java.io.*;public class Client
{
  Client()
  {
    try
    {
       Socket client = new Socket("localhost",8000);
       BufferedWriter bufWriter = new BufferedWriter(new OutputStreamWriter(client.getOutputStream()));
       bufWriter.write("客户端");
       client.close();
     }
     catch(IOException ex)
     {
       ex.printStackTrace();
     }
  }
  public static void main(String[] args)
  {
    new Client();
  }
}