gpt4 book ai didi

java - 如果没有更多行,InputStreamReader 应该结束

转载 作者:行者123 更新时间:2023-12-01 16:38:32 26 4
gpt4 key购买 nike

我有一个 InputStreamReader(与 BufferedReader 结合使用)。

我想循环读取Stream的内容

while((line = MyStream.readLine()) != null) {
s.o.p(line);
String lastline;
}

但这会创建一个没有结束的循环,所以我的整个程序等待循环结束..并等待...并等待。

目前,我有一个方法,您可以指定应该读取多少行。这工作正常,但非常不灵活。

我目前的方法

public void getStatus(int times) throws IOException {
for (int i = 0; i < times; i++) {
System.out.println(fromServer.readLine());
}

我希望此方法读取所有行并将最后一行保存在不带“times”参数的字符串中。

最佳答案

如果您获得的代码到达流的末尾,它将起作用。

我的猜测是这是一个网络流,而另一端没有关闭连接。但这不会导致您无限地进入循环 - 它最终会导致您只是卡在 readLine 调用上,等待另一端关闭流,或者等待更多数据即将到达。

您需要有某种方法来检测您已完成(例如终止行/连接关闭)知道提前读取多少行.

关于java - 如果没有更多行,InputStreamReader 应该结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6696935/

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