java文件传输用Java编写文件传输模块

java文件传输  时间:2021-06-11  阅读:()

用Java实现在两台电脑之间的文件传输

使用Socket可以做到,不过直接编程一般都是在局域网内,如果要在不同局域网间通信,需要使用一台有公网IP的服务器,可以电脑A和电脑B同时连接服务器,然后A向服务器传递文件,服务器再将文件转发电脑B。

也可以使用打洞的方式使A、B互联,此时服务器的作用是辅助打洞。

A、B向服务器发送信息后socket不要关闭(假设使用10989端口),同时使用Serversocket绑定监听相同的端口(监听10989端口)。

在java中有参数可以做到,具体方法请自行百度。

服务器获取到A、B的外网地址和端口,将A的外网地址信息发送给B、将B的外网地址信息发送给A。

然后使用A没有关闭的Socket向B发送一组信息(此时连接会失败,但是B的路由表上已经记录了A的信息),发送后A向服务器发送消息,服务器告诉B A已经发送消息。

然后B使用未关闭的socket向A发送消息,就和A上监听的ServerSocket取得连接了。

之后就可以互相传递数据。

有关java聊天软件中的文件传输功能构架?

实现Serialiable接口把file对象传过来,然后根据file对象的信息创建一个file文件

再用I/O流把file文件里的内容也通work传过来写入到传过来的那个文件中,加我QQ313633254

具体教你

用Java编写文件传输模块

import java.io.*; import java.nio.*; import java.nio.channels.FileChannel; public class javaTest { public static void main(String[] args) { String file1=System.getProperty("user.dir")+"/1.txt";//文件,自己修改 FileInputStream myFile = null; try { myFile = new FileInputStream(file1); // } catch(FileNotFoundException e) { e.printStackTrace(System.err); System.exit(1); } FileChannel myChannel = myFile.getChannel(); //这里定义缓冲区大小,每次读入字节数 ByteBuffer mybuf = ByteBuffer.allocate(1024); try { while(myChannel.read(mybuf) != -1) { byte[] mybytes = mybuf.array();//读入的文件转为字节数组 mybuf.clear(); /** * 在这里进行比较 * 可以通过字节对比 * 也可以把字节转成字符串再对比 * */ } myFile.close(); }catch(IOException e) { e.printStackTrace(System.err); System.exit(1); }

Sharktech($49/月),10G端口 32GB内存,鲨鱼机房新用户赠送$50

Sharktech 鲨鱼机房商家我们是不是算比较熟悉的,因为有很多的服务商渠道的高防服务器都是拿他们家的机器然后部署高防VPS主机的,不过这几年Sharktech商家有自己直接销售云服务器产品,比如看到有新增公有云主机有促销活动,一般有人可能买回去自己搭建虚拟主机拆分销售的,有的也是自用的。有看到不少网友在分享到鲨鱼机房商家促销活动期间,有赠送开通公有云主机$50,可以购买最低配置的,$49/月的...

Vultr新注册赠送100美元活动截止月底 需要可免费享30天福利

昨天晚上有收到VULTR服务商的邮件,如果我们有清楚的朋友应该知道VULTR对于新注册用户已经这两年的促销活动是有赠送100美元最高余额,不过这个余额有效期是30天,如果我们到期未使用完的话也会失效的。但是对于我们一般用户来说,这个活动还是不错的,只需要注册新账户充值10美金激活账户就可以。而且我们自己充值的余额还是可以继续使用且无有效期的。如果我们有需要申请的话可以参考"2021年最新可用Vul...

Sharktech:无限流量服务器丹佛,洛杉矶,荷兰$49/月起,1Gbps带宽哦!

鲨鱼机房(Sharktech)我们也叫它SK机房,是一家成立于2003年的老牌国外主机商,提供的产品包括独立服务器租用、VPS主机等,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹等,主打高防产品,独立服务器免费提供60Gbps/48Mpps攻击防御。机房提供1-10Gbps带宽不限流量服务器,最低丹佛/荷兰机房每月49美元起,洛杉矶机房最低59美元/月起。下面列出部分促销机型的配置信息。机房...

java文件传输为你推荐
xda论坛XDA论坛是中文网站吗?ostringstreams1.str() ostr c++中什么意思草莓派什么是草莓派?oa办公系统下载办公软件下载哪里可以下载啊?主要是公司准备搞这个东西,我先看看什么情况搜索引擎的概念什么是搜索引擎?搜索引擎是如何工作的?12种颜色12种颜色的英语怎么写,用中文怎么读防火墙排名什么防火墙世界第一啊?(急!!!)模式识别算法机器学习和模式识别有什么区别?看教材,发现它们的算法都差不多一样啊。。。assemblyinfo求教如何修改AssemblyInfo.cs的版本号部署工具如何使用office2016部署软件
vps虚拟主机 济南域名注册 香港ufo 阿里云搜索 bluevm 国外服务器网站 轻博 xen 国外php空间 京东商城双十一活动 91vps 免费智能解析 如何建立邮箱 空间登录首页 广州虚拟主机 空间服务器 免费稳定空间 hdchina 美国主机侦探 美国十大啦 更多