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); }

Virmach$7.2/年,新款月抛vps上线,$3.23/半年,/1核640M内存/10 GB存储/ 1Gbps/1T流量

Virmach自上次推出了短租30天的VPS后,也就是月抛型vps,到期不能续费,直接终止服务。此次又推出为期6个月的月抛VPS,可选圣何塞和水牛城机房,适合短期有需求的用户,有兴趣的可以关注一下。VirMach是一家创办于2014年的美国商家,支持支付宝、PayPal等方式,是一家主营廉价便宜VPS服务器的品牌,隶属于Virtual Machine Solutions LLC旗下!在廉价便宜美国...

HostYun 新增可选洛杉矶/日本机房 全场9折月付19.8元起

关于HostYun主机商在之前也有几次分享,这个前身是我们可能熟悉的小众的HostShare商家,主要就是提供廉价主机,那时候官方还声称选择这个品牌的机器不要用于正式生产项目,如今这个品牌重新转变成Hostyun。目前提供的VPS主机包括KVM和XEN架构,数据中心可选日本、韩国、香港和美国的多个地区机房,电信双程CN2 GIA线路,香港和日本机房,均为国内直连线路,访问质量不错。今天和大家分享下...

Hosteons:洛杉矶/纽约/达拉斯免费升级10Gbps端口,KVM年付21美元起

今年1月的时候Hosteons开始提供1Gbps端口KVM架构VPS,目前商家在LET发布消息,到本月30日之前,用户下单洛杉矶/纽约/达拉斯三个地区机房KVM主机可以从1Gbps免费升级到10Gbps端口,最低年付仅21美元起。Hosteons是一家成立于2018年的国外VPS主机商,主要提供VPS、Hybrid Dedicated Servers及独立服务器租用等,提供IPv4+IPv6,支持...

java文件传输为你推荐
jstz泰州哪里有民工市场天翼校园宽带中国电信校园宽带怎么样?币众筹众筹有哪几种 众筹如何实现回报谷歌图片识别如何打开PICASA头像识别功能?labelforandroid:labelfor是什么意思kjavaJava与KJava有什么区别吗.?腾讯贴吧QQ贴吧图标灭了后该怎样再点亮?人脸识别解锁手机解锁的人脸识别怎么设置网络电话免费版有没有免费的网络电话?纯免费的点心os点心操作系统?
网络域名 域名转让网 西安域名注册 美国和欧洲vps vps虚拟服务器 免费申请域名 骨干网 linkcloud suspended lighttpd 网站实时监控 河南服务器 智能骨干网 idc是什么 南通服务器 免费cdn 绍兴电信 drupal安装 免费的asp空间 什么是web服务器 更多