我正在尝试使用C#
将Unity游戏链接到Java服务器当Java服务器启动时,我可以发送数据的唯一方法是关闭实际关闭连接的StreamWriter(OUT.Close();)。所以我只能发送数据。或者,每次我想发送消息时,我都必须重新连接到服务器。
当我只使用Flush()时,数据将不会发送到服务器。 代码:
NetworkStream STREAM = connection.GetStream();
StreamWriter OUT = new StreamWriter(STREAM);
OUT.Write(text);
OUT.Flush()
这是我的阅读代码:
BufferedReader input = new BufferedReader(new InputStreamReader(client.getInputStream()));
String inputstring = input.readLine();
答案 0 :(得分:1)
您使用Write
编写没有行分隔符的文本,并使用ReadLine
进行阅读,因此不匹配。如果没有行分隔符,ReadLine
将读取到流的末尾,这解释了为什么需要关闭流。将Write
替换为WriteLine
。