• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信小程序 > 双向同步聊天小程序[ByJavaOnLinux]实现代码

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

作者:匿名 字体:[增加 减小] 来源:互联网

匿名通过本文主要向大家介绍了小程序等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
一个很简单的网络聊天小工具,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]实现代码的详细内容,更多请关注其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 微信小程序之数据访问介绍
  • 关于快速操作使用的教程实例
  • 微信小程序-仿盒马鲜生
  • 微信小程序 http请求封装详解及实例代码
  • 详解微信小程序解析网页内容实例介绍
  • 微信小程序MUI数字输入框效果的实现方法
  • 微信小游戏中如何实现转发&分享&获取头像&游戏圈四种功能
  • 小程序开发之解析网页内容
  • 微信小程序实现圆形进度条实例分享
  • 微信小程序 九宫格实例代码

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 小程序开发中怎样应用block
    • 微信小程序运行机制
    • 微信小程序实例:实现3D轮播图特效代码
    • 微信小程序实战开发之小程序基本目录结构讲解
    • 微信小程序开发图片加载(本地,网路)实例代码
    • 小程序开发之 for 语句详解
    • picker滚动选择器
    • 微信小程序Flex布局
    • 微信小程序中带参数返回上一页的方法总结(三种)
    • 关于微信小程序中图片处理的问题汇总

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有