1 回答
TA贡献1831条经验 获得超10个赞
在socket编程中,应该使用DataOutputStream而不是客户端程序中的PrintWriter来与Server通信。还要记住从客户端执行 close() 。我只修改了你的客户端程序,你可以检查一下。
import java.net.*;
import java.io.*;
import java.util.Random;
import java.util.logging.Level;
import java.util.logging.Logger;
public class ClientStringa {
public static void main(String[] args) {
try{
Socket socket = new Socket("localhost", 5555);
DataOutputStream out=new DataOutputStream(socket.getOutputStream());
// PrintWriter out = new PrintWriter(socket.getOutputStream());
Random r = new Random();
int N = r.nextInt(100);
for(int i=1;i<=N;i++){
// out.println("String" +i);
out.writeUTF("String" +i);
}
out.flush();
out.close();
}
catch (IOException ex) {
Logger.getLogger(ClientStringa.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
添加回答
举报