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