我在使用 EOFException
方法时低于 readUTF()
,请让我知道我如何克服这个问题,并请建议 readUTF()
如何通过其他网络传输套接字信息
import java.io.*;
import java.net.*;
public class GreetingServer {
public static void main(String args[]) {
String servername =args[0];
int port = Integer.parseInt(args[1]);
try {
System.out.println("Server Name "+ servername +"Port"+port);
Socket client = new Socket(servername,port);
System.out.println("Just connected to"+ client.getRemoteSocketAddress());
OutputStream outs = client.getOutputStream();
DataOutputStream dout = new DataOutputStream(outs);
dout.writeUTF("Hello From"+client.getRemoteSocketAddress());
InputStream in = client.getInputStream();
DataInputStream din = new DataInputStream(in);
System.out.println("Server Says"+ din.readUTF());
client.close();
}
catch (EOFException f) {
f.printStackTrace();
}
catch(IOException e) {
e.printStackTrace();
}
}
}
最佳答案
您已到达流的末尾。没有更多要读取的数据。
可能您的服务器没有使用 writeUTF(),
或者您与它不同步。如果服务器正在写行,您应该使用 BufferedReader.readLine().
关于java - readUTF 中的 EOFException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17972172/