为什么这个程序不能正常工作?客户端读取 SOME_MESSAGE 之后没有任何反应。似乎来自服务器的 println 方法在某种程度上对传输长类型数字有影响。
服务器
import java.net.*;
import java.io.*;
public class Server {
  public static void main(String[] args) throws Exception {
    ServerSocket socket = new ServerSocket(9999);
    while (true) {
      Socket sock = socket.accept();
      PrintWriter out = new PrintWriter(new BufferedWriter(
          new OutputStreamWriter(sock.getOutputStream())), true);
      DataOutputStream outByte = new DataOutputStream(sock.getOutputStream());
      out.println("SOME_MESSAGE");
      outByte.writeLong(948L);
    }
  }
}
客户
import java.net.*;
import java.io.*;
public class Client {
  public static void main(String[] args) throws Exception {
    Socket sock = new Socket("127.0.0.1", 9999);
    DataInputStream inByte = new DataInputStream(sock.getInputStream());
    BufferedReader in = new BufferedReader(new InputStreamReader(
        sock.getInputStream()));
    System.out.println(in.readLine());
    long number = inByte.readLong();
    System.out.println(number);
  }
}