0

对 Java 非常陌生。我的猜测是它应该是new Socket ("nothing",8)

public static void test(String s[]) {
  try {
    echoSocket = new Socket("nothing", 7);
    out = new PrintWriter(echoSocket.getOutputStream(), true);
    in = new BufferedReader( new InputStreamReader(echoSocket.getInputStream()));
  } catch (UnknownHostException e) {
    System.err.println("Don't know about host: .");
    return;
  }
  process(out, in, echoSocket);
  out.close();
  in.close();
  echoSocket.close();
}
4

3 回答 3

2

这取决于您要完成的工作。从Socket 上的 Java 文档中,如果您的服务器什么都不是,并且您的端口是 8,那么您是正确的。但是不知道您要连接什么,就无法调试此代码。

于 2012-11-15T16:30:40.577 回答
1

带有 String 和 Int 的 Socket 构造函数请求主机名和端口。主机“nothing”不是有效的主机名。这可能会导致您的“错误”。

于 2012-11-15T16:33:02.197 回答
1

如果您的主机文件具有此“无”端口 7 在其上运行的 ip 映射,您仍然可以尝试“无”。

主机文件的一部分

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
    127.0.0.1       192.168.2.23
#   ::1             localhost
127.0.0.1       localhost
127.0.0.1       nothing

在这种情况下,您的“无”是 localhost

于 2012-11-15T16:47:34.567 回答