Java Socket+多线程:传输非文本文件,客户端可以同时接受多个客户端发送的文件

您所在的位置:网站首页 结构化,半结构化,非结构化数据的特点 Java Socket+多线程:传输非文本文件,客户端可以同时接受多个客户端发送的文件

Java Socket+多线程:传输非文本文件,客户端可以同时接受多个客户端发送的文件

2024-02-14 04:48| 来源: 网络整理| 查看: 265

本篇是socket+IO的扩展,是下面这篇的扩展,具体参考:

Java Socket+IO练习2:使用socket传输文件和图片

 

上文中是一对一传输,客户端文件传输完毕后,服务端也自动关闭。这样,服务端只能接收一个客户端发来的数据,如果想要服务端同时接收多个客户端发送的数据,服务端就要支持多线程。

需要把服务端的文件接收代码 放到线程里,具体代码如下。

客户端代码,与上文中一致:

package socket; import java.io.*; import java.net.Socket; import java.util.ArrayList; import java.util.Arrays; public class test3Client { public static void main(String[] args) throws IOException { File file = new File("C:\\screenshot.jpg"); uploadFile(file); } private static void uploadFile(File file) throws IOException { if (!file.exists()) throw new IOException("文件不存在!"); // 1.创socket作为client; Socket s = new Socket(


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3