java NullPointerException和BufferedReader
我的程序不断向我抛出nullPointerException,我不知道为什么。我想可能是因为bufferedReader,但我不确定
String line = reader.readLine();
while (!line.isEmpty()) {
line = repairLine(line);
tree.add(line);
line = reader.readLine();
}
是的,它被包裹在try-catch块中。它说问题在等待解决。它不适用于“if(line!=null)”。我真的不知道是什么原因造成的。谢谢你的帮助
# 1 楼答案
问题似乎与以下代码行有关:
如果文件中没有任何内容可读取,则该行将为空。因此,while循环中存在异常。您正在尝试对空引用调用方法
也就是说,从文件中读取行的传统方法是将读取的行分配给while条件本身中的变量(未测试的代码):
# 2 楼答案
我也有同样的错误,这意味着另一个连接的客户端上的套接字正在关闭,而它正试图在服务器上读取
为了添加一些上下文,我正在运行一个服务器,各种客户端通过java套接字连接到它。当客户端关闭套接字时,服务器端出现了这个错误
所以为了解决这个问题,我决定在每次连接之后关闭服务器端和客户端套接字。我这样做的方式是,在关闭客户端之前,它会在关闭其套接字之前向服务器发送一条“退出”消息。当服务器读取“退出”消息时,它还将关闭其套接字
例如:
为我工作,希望有帮助