java socket 案例_Javasocket应用实例

Javasocket应用实例

用于本地群聊的小程序:

客户端:

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.net.Socket;

public class Friendclient extends Thread

{

public void Writer() throws Exception

{

Socket s=new Socket("127.0.0.1",54321);

BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

String message="本客户端说:";

while(!(message.equals("goodbye")))

{

message=br.readLine();

System.out.println("客户端说:"+message);

bw.write(message+"\n");

bw.flush();

}

bw.close();s.close();

}

public void run()

{

BufferedReader bq=null;

Socket st=null;

try

{

st=new Socket("127.0.0.1",54321);

bq=new BufferedReader(new InputStreamReader(st.getInputStream()));

String msg="其他客户端说:";

while(!(msg.equals("")))

{

msg=bq.readLine();

System.out.println("其他客户端说:"+msg);

}

}

catch(Exception e){e.printStackTrace();}

finally

{

try

{

bq.close();st.close();

}

catch(Exception e){e.printStackTrace();}

}

}

public static void main(String args[])throws Exception

{

Friendclient ft=new Friendclient();

ft.start();

ft.Writer();

}

}

服务器端:

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.net.ServerSocket;

import java.net.Socket;

import java.util.ArrayList;

public class Allserver

{

private ServerSocket ss=null;

private static ArrayList al=new ArrayList();

public Allserver() throws Exception

{

ss=new ServerSocket(54321);

while(true)

{

Socket s=ss.accept();

al.add(s);

new Mtherd(s).start();

}

}

private class Mtherd extends Thread

{

private Socket sd=null;

private BufferedReader br=null;

//private BufferedWriter bw=null;

public Mtherd(Socket sd)throws Exception

{

this.sd=sd;

br=new BufferedReader(new InputStreamReader(sd.getInputStream()));

//bw=new BufferedWriter(new OutputStreamWriter(sd.getOutputStream()));

}

public void run()

{

try

{

String gh="...................";

while(true)

{

gh=br.readLine();

setAll(gh);

}

}

catch(Exception e){e.printStackTrace();}

}

public void setAll(String x)throws Exception

{

Socket ss=null;

BufferedWriter bv=null;

for(int i=0;i

{

ss=(Socket)al.get(i);

bv=new BufferedWriter(new OutputStreamWriter(ss.getOutputStream()));

bv.write(x+"\n");

bv.flush();

}

}

}

public static void main(String args[])throws Exception

{

new Allserver();

}

}

【Javasocket应用实例】相关文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值