gpt4 book ai didi

java - 简单的客户端服务器程序无法运行

转载 作者:行者123 更新时间:2023-12-01 18:41:31 25 4
gpt4 key购买 nike

服务器程序:

import java.io.*;
import java.net.*;
public class server
{
public static void main(String args[])
{
try
{
ServerSocket ss=new ServerSocket(2000);
Socket s=ss.accept();
BufferedReader br=new BufferedReader(new InputStreamReader(s.getInputStream()));
String str;
while((str=br.readLine())!=null)
{
System.out.println(str);
}
}
catch(Exception e)
{
System.out.println(e);
}
}
}

客户端程序:

import java.net.*;
import java.io.*;
public class client
{
public static void main(String args[])
{
try
{
Socket s=new Socket("127.0.0.1",2000);
String str;
BufferedWriter br=new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
br.write("\nHello World\n");
}
catch(Exception e)
{
System.out.println(e);
}
}
}

我面临的问题是:

  1. 无输出。
  2. 未指示任何异常/错误。

如果我做错了什么,请解释我。问题可能是服务器正在读取时客户端没有写入任何内容。

最佳答案

客户端程序写入流后关闭流br.close();

写入流后,必须关闭流或刷新流(br.flush()),因为当流关闭时,只能读取该流。I/O 操作不能同时在同一个流上执行。

两个套接字通过同一流连接,因此 I/O 操作不能同时在该流上执行。

关于java - 简单的客户端服务器程序无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19807028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com