上面的只是一个有界面的传输,为了便于说明,我就跟你写一个JAVA传输的小例子,希望对你有所帮助。
传输呢,基本上是要靠Socket,根据TCP/IP协议来传递文件,通过客户端和服务端来实现这个握手协议。
以客户端向服务器端传送文件为例吧: 建立服务器:
import java.io.*;
import .*;
public class Server{
public staitc void main(String[] args) throws Exception{
//建立服务器
ServerSocket ss=new ServerSocket(9999);//给一个可用的端口号。
Socket s=ept();//这里建立阻塞,只有当有客户端连接进来,程序才会往下走。
InputStream input=s.getInputStream();//获取Socket输入流
FileOutputStream fos=new FileOutputStream("文件");//建立文件输出流,接收客户端传递的文件
byte[] buf=new byte[4049];//建立缓冲数组,接收文件时,将字节写入字节数组内部保存
for(int size=0;size!=-1;size=input.read(buf)){//将获得的信息写入字节数组,写入的大小为size
fos.write(buf,0,size); //当size=-1的时候,说明已经读取完毕
fos.flush(); //强制写入内容
}
fos.close();
ss.close();
System.out.println("文件下载完毕!");
}
}
建立客户端:
import java.io.*;
import .*;
public class Client{
public static void main(String[] args) throws Exception{
Socket s=new Socket("127.0.0.1",9999);//利用服务器IP地址和端口为参数,建立和服务器通信
FileInputStream fis=new FileInputStream("文件"); //创造输入流,用于发送需要传递的文件
OutputStream output=s.getOutputStream();//获得Socket输出流
byte[] buf=new byte[4049];//建立缓冲数组,接收文件时,将字节写入字节数组内部保存
for(int size=0;size!=-1;size=fis.read(buf)){)){//将获得的信息写入字节数组,写入的大小为size
output.write(buf,0,size);//当size=-1的时候,说明已经读取完毕
output.flush();//强制将文件发送出去
}
fis.close();
s.close();
System.out.println("文件上传完毕!");
}
}
今天有网友提到自己在Linux服务器中安装VNC桌面的时候安装都没有问题,但是在登录远程的时候居然有出现灰色界面,有三行代码提示"Accept clipboard from viewers,Send clipboard to viewers,Send primary selection to viewers"。即便我们重新登录也不行,这个到底如何解决呢?这里找几个可以解决的可能办法,我们多多尝试。...
轻云互联怎么样?轻云互联,广州轻云网络科技有限公司旗下品牌,2018年5月成立以来,轻云互联以性价比的价格一直为提供个人,中大小型企业/团队云上解决方案。本次轻云互联送上的是美国圣何塞cn2 vps(免费50G集群防御)及香港沙田cn2 vps(免费10G集群防御)促销活动,促销产品均为cn2直连中国大陆线路、采用kvm虚拟技术架构及静态内存。目前,轻云互联推出美国硅谷、圣何塞CN2GIA云服务器...
轻云互联成立于2018年的国人商家,广州轻云互联网络科技有限公司旗下品牌,主要从事VPS、虚拟主机等云计算产品业务,适合建站、新手上车的值得选择,香港三网直连(电信CN2GIA联通移动CN2直连);美国圣何塞(回程三网CN2GIA)线路,所有产品均采用KVM虚拟技术架构,高效售后保障,稳定多年,高性能可用,网络优质,为您的业务保驾护航。官方网站:点击进入广州轻云网络科技有限公司活动规则:用户购买任...