日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JAVA 局域网聊天_java实现简易局域网聊天功能

發布時間:2024/1/1 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JAVA 局域网聊天_java实现简易局域网聊天功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文實例為大家分享了java使用udp模式編寫聊天程序的具體代碼,供大家參考,具體內容如下

java代碼:

/*

使用udp模式,編寫一個聊天程序

有發送和接收數據2部分,

一個線程接收,一個線程發送

由于發送和接收動作是不一致的,所以要使用2個run方法

而且這兩個方法要封裝到不同的類中

本程序忽略了部分異常的處理,也未加入ui組件

這樣比較簡潔

發送端口9998

接受端口9999

用的是局域網廣播地址,所以自己發的消息自己也收到了

[示例]:簡易控制臺聊天程序

*/

import java.net.*;

import java.io.*;

class demo

{

public static void main(string[] args) throws exception

{

datagramsocket sendsocket = new datagramsocket(9998); //發送端

datagramsocket recesocket = new datagramsocket(9999); //接收端

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"), //廣播

9999 //目標端口

);

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());

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();

}

}

}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持萬仟網。

希望與廣大網友互動??

點此進行留言吧!

總結

以上是生活随笔為你收集整理的JAVA 局域网聊天_java实现简易局域网聊天功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。