如何在局域网内实现聊天

2025-05-26 04:11:33

1、打开MyEclipse,创建一个JAVA PROJECT,填写项目名称(任意名称)

如何在局域网内实现聊天
如何在局域网内实现聊天

2、点FINISH完成创建,再选择项目名,右击新建class,只填Name空格,填个A.点finnish完成。

如何在局域网内实现聊天

3、完成后进入java代码界面,把下面代码复制到里面就行啦 import java.net.*; import java.io.*; class A { public static void main(String[] args) throws Exception { DatagramSocket sendSocket = new DatagramSocket(9998); //发送端 DatagramSocket receSocket = new DatagramSocket(369); //接收端 new Thread(new MsgSend(sendSocket)).start(); //发送线程 new Thread(new MsgRece(receSocket)).start(); //接受线程 } } class MsgSend implements Runnable //发送 { private DatagramSocket dsock; public MsgSend(DatagramSocket dsock) { this.dsock= dsock; } public void run() { BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in)); String lineStr = null; try { while(true) { lineStr = bufr.readLine(); if(lineStr!=null) { if(lineStr.equals("over886")) { break; } else { byte[] dataBuf = lineStr.getBytes(); DatagramPacket dataPack = //数据打包 new DatagramPacket( dataBuf, dataBuf.length, InetAddress.getByName("192.168.1.255"), 369 ); dsock.send(dataPack); } } } bufr.close(); dsock.close(); } catch(Exception e) { throw new RuntimeException("发送失败!"); } } } class MsgRece implements Runnable //接收 { private DatagramSocket dsock; public MsgRece(DatagramSocket dsock) { this.dsock= dsock; } public void run() { try { while(true) { byte[] dataBuf = new byte[1024]; DatagramPacket dataPack = new DatagramPacket(dataBuf,dataBuf.length); dsock.receive(dataPack); //将获取的数据保存到指定的数据包 String ip = dataPack.getAddress().getHostAddress(); String data = new String(dataPack.getData(),0,dataPack.getLength()); //getData缓冲区 int port = dataPack.getPort(); //返回端号 System.out.println(); System.out.println("来自ip为 "+ip+" <对方端口>: "+port+" 的消息"); System.out.println(data); } } catch(Exception e) { throw new RuntimeException("接受失败!"); } finally { dsock.close(); } } }

4、现在运行看看,在下方的控制台输入文字,在同一局域网的小伙伴是不是收到消息了?(小伙伴也要和你做同样的步骤完成java代码制作)

如何在局域网内实现聊天
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
猜你喜欢