求助!希望大家能指点下!万分感谢!

wrw123 2004-08-13 02:48:36
//我是初学者请大家多多指点!
//客户端:
import java.io.*;
import java.net.*;
public class Client
{
public static void main(String args[])
{
try
{
Socket socket=new Socket("localhost",8888);
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
PrintWriter pw=new PrintWriter(socket.getOutputStream());
BufferedReader br2=new BufferedReader(new InputStreamReader(socket.getInputStream()));

String readline;
readline=br1.readLine();
while (!readline.equals("bye"))
{
pw.print(readline);
pw.flush();
System.out.println("Client:"+readline);
System.out.println("Server:"+br2.readLine());
readline=br1.readLine();
}
pw.close();
br2.close();
socket.close();
}catch(Exception e)
{
System.out.println("Error:"+e);
}
}
}

//服务器端:
import java.net.*;
import java.io.*;
import java.applet.Applet;
public class Server {
public static void main(String[] args) {
try
{
ServerSocket server=null;
try{
server=new ServerSocket(8888);
}catch(Exception e){
System.out.println("error:::"+e.toString());
}

Socket socket=null;
try{
socket=server.accept();
}catch(Exception e){
System.out.println("Error"+e);
}

String line;
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
BufferedReader br2=new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter pw=new PrintWriter(socket.getOutputStream());
System.out.println("Client:"+br2.readLine());
line=br1.readLine();
while(!line.equals("bye")){
pw.println(line);
pw.flush();
System.out.println("Server:"+line);
System.out.println("Client:"+br2.readLine());
line=br1.readLine();
}
pw.close();
br1.close();
socket.close();
server.close();
}catch(Exception e)
{
System.out.println("Server Error:"+e);
}
}
}

运行后服务器端出现错误:
Can not listenjava.net.BindException: Address already in use: JVM_Bind
Errorjava.lang.NullPointerException
Server Error:java.lang.NullPointerException
...全文
149 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wrw123 2004-08-13
  • 打赏
  • 举报
回复
我换了端口也没用!
flashactionscript 2004-08-13
  • 打赏
  • 举报
回复
端口地址被占用!
pigrain 2004-08-13
  • 打赏
  • 举报
回复
我稍微修改了一下,希望对你有点帮助,呵呵
import java.net.*;
import java.io.*;

public class Server {

public static void main(String[] args) throws IOException{


ServerSocket server=new ServerSocket(8888);
try{
Socket socket=server.accept();
try{


String line;
PrintWriter br1=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);

BufferedReader br2=new BufferedReader(new InputStreamReader(socket.getInputStream()));


while(true){

line=br2.readLine();
if(line.equals("BYE")) break;

System.out.println("From Client:"+line);
br1.println("From Server:"+line);
}
}


finally{

socket.close();
}
}
finally{}
}
}
====================
import java.io.*;
import java.net.*;
public class Client
{
private static PrintWriter out;
public static void main(String args[])
throws IOException{

try{

Socket socket=new Socket("localhost",8888);
try{

BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
PrintWriter out = new PrintWriter(socket.getOutputStream(),true);
BufferedReader br2=new BufferedReader(new InputStreamReader(socket.getInputStream()));
while(true){

String readline=br1.readLine();

System.out.println("Client(YOUR INPUT):"+readline);
out.println(readline);
String str=br2.readLine();
System.out.println(str);
if(readline.equals("BYE")) break;

}



}
finally
{
socket.close();
}
}
finally{
}
}
}
==================
注:我比较喜欢try{} finally{},所以。。呵
pigrain 2004-08-13
  • 打赏
  • 举报
回复
我运行后没有错误,但你的程序有些问题,我想实现不了什么功能

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧