admin 管理员组文章数量: 1086019
Java 编写飞鸽传书系统 窗体程序 完整源码
今天为大家分享简单的飞鸽传书程序的开发与制作,目前系统已经完成了初步功能,后续会进一步完善。整个系统界面漂亮,有完整源码,希望大家可以喜欢。喜欢的帮忙点赞和关注。一起编程、一起进步
开发环境
开发语言为Java,开发环境Eclipse或者IDEA都可以。运行主程序,或者执行打开JAR文件即可以运行本程序。
系统框架
利用JDK自带的SWING框架开发,不需要安装第三方JAR包。纯窗体模式,直接运行Main文件即可以。同时带有详细得设计文档。
程序主要功能
运行方法
1 运行AppStart.java文件
2 程序出现飞鸽传书的面板
系统主要功能点
1发送文字信息,收到方会弹出提醒
2 当发送文件的时候,收到放会弹出提醒,显示文件的名字。点击名字的时候,可以下载相应的文件
实现效果
主要代码
package com.ipmsg;import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.ServerSocket;
import java.Socket;public class TCPService {public static final int PORT = 30000;private static final int BUFF_SIZE = 8192;private static Object lock = new Object();private ServerSocket serverSocket;private static boolean isInit = false;private TCPService() throws IOException {serverSocket = new ServerSocket(PORT);SendFileServer server = new SendFileServer();server.start();}public static void init() {synchronized (lock) {if (!isInit) {try {new TCPService();} catch (IOException e) {e.printStackTrace();}}}}private class SendFileServer extends Thread {@Overridepublic void run() {try {while (true) {Socket socket = serverSocket.accept();SendFile st = new SendFile(socket);st.start();}} catch (IOException e) {e.printStackTrace();}}}private class SendFile extends Thread {Socket socket;SendFile(Socket socket) {this.socket = socket;}@Overridepublic void run() {DataInputStream in = null;DataInputStream fin = null;DataOutputStream out = null;try {int len = 0;byte[] buff = new byte[BUFF_SIZE];in = new DataInputStream(socket.getInputStream());len = in.read(buff);String filePath = new String(buff, 0, len, "UTF-8");File file = new File(filePath);fin = new DataInputStream(new BufferedInputStream(new FileInputStream(file)));out = new DataOutputStream(socket.getOutputStream());out.writeLong(file.length());out.flush();buff = new byte[BUFF_SIZE];while ((len = fin.read(buff)) > 0) {out.write(buff, 0, len);}out.flush();} catch (IOException e) {e.printStackTrace();} finally {try {if(in != null){in.close();in = null;}if(fin != null){fin.close();fin = null;}if(out != null){out.close();out = null;}socket.close();} catch (IOException e) {e.printStackTrace();}}}}}
本文标签: Java 编写飞鸽传书系统 窗体程序 完整源码
版权声明:本文标题:Java 编写飞鸽传书系统 窗体程序 完整源码 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1693411684a220401.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论