您好,欢迎访问一九零五行业门户网

双向同步聊天小程序[ByJavaOnLinux]实现代码

一个很简单的网络聊天小工具,java实现,双向同步发送信息,功能增加中
局域网内ip请自行更改,只要变更client端的localhost ip为另一台pc的ip就行
import java.io.*; import java.net.socket; import java.net.serversocket; import java.net.socketexception; public class testserver {         public static void main(string[] args) {                 try {                         //open the communication port for messenge-transfer                         //server socket id:8888                         serversocket s = new serversocket(8888);                         //create socket instance and set it be waiting state to accept data                         socket s1 = s.accept();                         //original data stream                         inputstream is = s1.getinputstream();                         outputstream os = s1.getoutputstream();                                                  dataoutputstream dos = new dataoutputstream(os);                         datainputstream dis = new datainputstream(is);                         system.out.println(server started!);                         new myserverreader(dis).start();                         new myserverwriter(dos).start();                 } catch (ioexception ioe) {                         ioe.printstacktrace();                 }         } } class myserverreader extends thread {         private datainputstream dis;         public myserverreader(datainputstream dis) {                 this.dis = dis;         }         public void run() {                 string info;                 try {                         while (true) {                                 info = dis.readutf();                                 system.out.println(ta said: + info);                                 if (info.equals(bye) || info.equals(88)) {                                         system.out.println(ta offline, connection's out!);                                         system.exit(0);                                 }                         }                 } catch (ioexception e) {                         e.printstacktrace();                 }         } } class myserverwriter extends thread {         private dataoutputstream dos;         public myserverwriter (dataoutputstream dos) {                 this.dos = dos;         }         public void run() {                 string info;                 inputstreamreader isr = new inputstreamreader(system.in);                 bufferedreader br = new bufferedreader(isr);                 try {                         while (true) {                                 info = br.readline();                                 dos.writeutf(info);                                 if (info.equals(bye) || info.equals(88)) {                                         system.out.println(local machine offline, application exit!);                                         system.exit(0);                                 }                         }                 } catch (ioexception e) {                         e.printstacktrace();                 }         } }
client端的:
import java.io.*; import java.net.socket; import java.net.socketexception; public class testclient {         public static void main (string[] args) {                 try {                         socket s1 = new socket(127.0.0.1, 8888);                         inputstream is = s1.getinputstream();                         outputstream os = s1.getoutputstream();                         datainputstream dis = new datainputstream(is);                         dataoutputstream dos = new dataoutputstream(os);                         new myclientreader(dis).start();                         new myclientwriter(dos).start();                 } catch (ioexception e) {                         e.printstacktrace();                 }         } } class myclientreader extends thread {         private datainputstream dis;         public myclientreader(datainputstream dis) {                 this.dis = dis;         }         public void run() {                 string info;                 try {                         while (true) {                                 info = dis.readutf();                                 system.out.println(ta said: + info);                                 if (info.equals(bye) || info.equals(88)) {                                         system.out.println(ta offline, connection's out!);                                         system.exit(0);                                 }                         }                 } catch (ioexception e) {                         e.printstacktrace();                 }         } } class myclientwriter extends thread {         private dataoutputstream dos;         public myclientwriter (dataoutputstream dos) {                 this.dos = dos;         }         public void run() {                 string info;                 inputstreamreader isr = new inputstreamreader(system.in);                 bufferedreader br = new bufferedreader(isr);                 try {                         while (true) {                                 info = br.readline();                                 dos.writeutf(info);                                 if (info.equals(bye) || info.equals(88)) {                                         system.out.println(local machine offline, application exit!);                                         system.exit(0);                                 }                         }                 } catch (ioexception e) {                         e.printstacktrace();                 }         } }
以上就是双向同步聊天小程序[byjavaonlinux]实现代码的详细内容。
其它类似信息

推荐信息