在DataInputStream类中找不到Java套接字程序和符号
我正在开发一个客户机-服务器程序,我的程序显示了一些编译器无法检测到的套接字对象错误,我重新检查了它,没有任何拼写错误或缺少分号,但它仍然显示了错误。此外,我还将我的程序与一些在线套接字编程教程进行了比较,发现我的方法是正确的。我对java套接字编程非常陌生在DataInputStream类中找不到Java套接字程序和符号,java,sockets,Java,Sockets,我正在开发一个客户机-服务器程序,我的程序显示了一些编译器无法检测到的套接字对象错误,我重新检查了它,没有任何拼写错误或缺少分号,但它仍然显示了错误。此外,我还将我的程序与一些在线套接字编程教程进行了比较,发现我的方法是正确的。我对java套接字编程非常陌生 try { JOptionPane.showMessageDialog(null,"Server : Configuring the port"+port); ServerSocket server = new
try
{
JOptionPane.showMessageDialog(null,"Server : Configuring the port"+port);
ServerSocket server = new ServerSocket(port);
JOptionPane.showMessageDialog(null,"Server : Waiting for client's connection");;
while(true)
{
Socket socket = new Socket();
socket = server.accept();
}
}
catch(IOException e)
{
JOptionPane.showMessageDialog(null,"Server : Nothing Found");
}
try
{
DataInputStream input = new DataInputStream(socket.getInputStream()); // get the input from client
DataOutputStream output = new DataOutputStream(socket.getOutputStream()); // Send the output to client
String word = "Connection Establish";
while(true)
{
word = output.readLine(); // read the message
output.println(word); // display the message to client
}
}
catch(IOException e)
{
JOptionPane.showMessageDialog(null,"Server : Can't Connect To Server, Please Try Again");
}
}
这是我程序的一部分,错误出现在DataInputStream类中,因为它找不到套接字的符号
将提供完整的程序您需要在
try
块之外声明套接字
:
Socket socket = null;
try{
...
while(true) {
socket = server.accept();
}
}
...
所以,你得到了一个错误。它是什么?发布完整准确的错误消息。告诉我们它指的是哪一行。不读取错误消息无助于您(和我们)解决问题。错误发生在所有DataInputStream类上,该类为我提供未找到套接字对象错误发生在第35/36行和第40/41行。sry未提供明确说明,这不是exat和完整的错误信息。这就是您对准确完整的错误消息的错误解释。您是否定义了可从try块访问的
socket
变量?您知道变量作用域是什么吗?DataOutputStream
没有println()
方法。您的异常处理结构不良。依赖于try块成功与否的代码应该在try块中。这里的错误只是一个简单的范围界定问题,由糟糕的编码引起。@ShinjiKagawa,那会是什么问题?您没有足够详细地描述它,让任何人都知道它是什么,但这个答案肯定纠正了代码中的错误。谢谢大家,我每天都解决了所有错误消息