我正在使用DatagramSocket和datagramPacket在java中创建服务器聊天程序 我在客户端代码中获取java.lang.NullPointerException以发送数据包
try
{
InetAddress ia = InetAddress.getLocalHost();
String s1 = new String(Uname + "-C-" + ia.getHostAddress());
cdp = new DatagramPacket(s1.getBytes(), s1.length(), ia, 7080);
csock.send(cdp);
csock.setSoTimeout(5000);
csock.receive(cdp);
s1 = new String(cdp.getData(), 0, cdp.getLength());
chat.append(s1);
}
catch(Exception e)
{
onlineuser.append("\n" + e);
}
有人可以帮我清除这个错误。 提前致谢
答案 0 :(得分:1)
根据您在评论中告诉我们的内容,您尚未初始化csock。在尝试使用它之前一定要调用它的构造函数。
你已经通过说:public DatagramSocket csock;但是你没有为它分配任何值,因此它默认为null。这是你例外的来源。
答案 1 :(得分:0)
您没有提供足够的分析代码,但我认为csock
为空。
有关更多信息,请尝试阅读this docs