当前位置: 首页 > 面试题库 >

无法读取通过DataOutputStream发送的号码

诸腾
2023-03-14
问题内容

这是我的客户代码

Random rand = new Random();
int  n = rand.nextInt(50) + 1;
DataInputStream dis = new DataInputStream(_socket.getInputStream());
DataOutputStream dos = new DataOutputStream(_socket.getOutputStream());
dos.writeInt(n);

这是服务器代码

try {
     DataInputStream dis = new DataInputStream(socket.getInputStream());
     BufferedReader input = new BufferedReader(new InputStreamReader(dis));  
     int fromClient = input.read();
     System.out.println(fromClient);
} catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
}

但是即使我这样修改它,我也不会在fromClient中接收任何内容

System.out.println(fromClient+"test");

我没有结果


问题答案:

客户端需要调用dos.flush()dos.close()导致将缓冲的数据推送到服务器。(如果您打算写入更多数据,请刷新,否则关闭。)

服务器端需要在DataInputStream实例上使用readInt读取数据。使用DataOutputStream写入的数据应使用DataInputStream读取。

最后,摆脱BufferedReader / InputStreamReader。这是错误的。



 类似资料:
  • 我目前有一个邮件服务器正在运行。我可以通过 mywebsite.com/roundcube/ 从这个网站我可以发送和接收电子邮件适当。日志显示所有的邮件进出都很好。我从这里发到我的gmail账户,然后又发回来。 然而,我真正想做的是使用javax mail从java发送一些邮件。

  • 我阅读了javamail-android的指南和一些关于StackOverflow的帖子。例如。如何在Android中使用JavaMail API发送邮件?我收到消息“邮件发送成功...”。但邮件不会到达收件人地址。我有以下输出: 我如何修复它或使用另一种方式发送电子邮件?

  • 我一直在到处寻找答案,但没有任何帮助。 这是我的代码: 当我试图读取URL时,下面出现了一个异常。 任何帮助都会很好。我正在尝试读取url内部的图像,并将其与现有文件进行比较。这里没有任何问题给出答案。 编辑: 我尝试在命令行“keytool-list-keystore keystore”中输入,但它只显示给我TrustedCertentries。还没有解决方案奏效。

  • 我使用SendInBlue Java Api发送电子邮件,我在scala中编写了以下代码: 但我得到了这个错误:{“代码”:“失败”,“消息”:“需要有效的”至“电子邮件地址”,“数据”:[]}

  • 我有一个角度12前端应用程序与Spring Boot后端应用程序通信。应该使用cookie通过CSRF令牌调用API,但我的逻辑似乎只适用于localhost。 请查找以下代码片段: 通过ngx cookie服务设置角度cookie: 在每次请求之前调用角度拦截器: Spring Boot CORS一般配置: 我真的不明白问题是在前端还是后端。。。同样,通过HTTP(localhost)发送Coo

  • 具有以下邮件配置设置: 以及以下属性: 我得到以下错误: JAVAlang.RuntimeException:javax。邮政MessaginException:无法连接到SMTP主机:SMTP。我们德勤。com,端口:25;嵌套的例外是:java。网SocketException:权限被拒绝: 当我使用gmail作为“发件人”帐户和“收件人”中的Outlook帐户时,代码是一样的。 我试着设置s