【发布时间】:2018-04-19 08:19:22
【问题描述】:
我是网络新手,我正在尝试编写服务器客户端程序。尽管如此,我仍然收到地址已经在使用中并且无法聊天。我的一个朋友在他的电脑上运行它,它正在工作。有人可以向我解释为什么我不断收到此错误吗?
这是服务器类:
import java.net.*;
import java.io.*;
class server
{
public static void main(String []args)
{
try
{
ServerSocket serv = new ServerSocket(8001);
System.out.println("Server up and listening:");
Socket S = serv.accept();
InetAddress obj = S.getInetAddress();
System.out.println("Request coming from:");
BufferedReader br = new BufferedReader(new InputStreamReader(S.getInputStream()));
String msg = br.readLine();
System.out.println("Message recieved:"+msg);
br.close();
serv.close();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
}}
这是客户端类:
import java.net.*;
import java.io.*;
import java.util.*;
class client`{
public static void main(String [] args)
{
Socket s = null;
BufferedOutputStream bout = null;
InetAddress obj = null;
try {
obj = InetAddress.getByName(args[0]);
s = new Socket(obj, 8001);
String str = new Scanner(System.in).nextLine();
byte[] arr = str.getBytes();
bout = new BufferedOutputStream(s.getOutputStream());
bout.write(arr);
bout.flush();
bout.close();
s.close();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
} }
感谢您提供的任何帮助!
【问题讨论】:
-
您是否检查过端口是否已在使用中,如错误状态?
-
在客户端,你发送什么参数作为参数?
-
请不要破坏您的帖子。通过在 Stack Exchange 网络上发布,您已授予 SE 分发该内容的不可撤销的权利(在 CC BY-SA 3.0 license 下)。根据 SE 政策,任何破坏行为都将被撤销。
标签: java networking server client chat