java nfs是什么,让我们一起了解一下?
NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送。
NFS的特点是什么?
1、提供透明文件访问以及文件传输。
2、容易扩充新的资源或软件,不需要改变现有的工作环境。
3、 高性能,可灵活配置。
NFS的工作原理是什么?
1、通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,使得每个计算机的节点能够像使用本地资源一样方便地使用网上资源。换言之,NFS可用于不同类型计算机、操作系统、网络架构和传输协议运行环境中的网络文件远程访问和共享。
2、使用客户端/服务器架构,由一个客户端程序和服务器程序组成。服务器程序向其他计算机提供对文件系统的访问,其过程称为输出。NFS客户端程序对共享文件系统进行访问时,把它们从NFS服务器中“输送”出来。文件通常以块为单位进行传输。
如何编写java代码读出远程客户端的文件内容?
使用的包有 jftp.jar
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import com.sun.nfs.XFileExtensionAccessor;
import com.sun.xfile.*;
import net.sf.jftp.system.logging.Log;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
/**
* Created by fd on 2017/8/14.
*/
public class NFS {
String url;
XFile xfile;
public void NFSconnection(String ip,String dir)
{
url = "nfs://" + ip + "/" + dir;//创建连接
xfile = new XFile(url);
//调用exists()判断是否连接成功
if (xfile.exists()) {
System.out.println("URL is OK!");
} else {
System.out.println("URL is Bad!");
return;
}
}
public void coming(String pathname) throws IOException {
String path[] = pathname.split("/");//切割,如果服务器是unix系统,更改为"\"
String[] fileList = new String[1024];//设置接收目录扫描的长度,暂时设置为1024
fileList = xfile.list();//缺少这一句的话,会出现找不到文件的错误
XFile temp;
XFileInputStream in = null;
for(String splittext:path){
url = url+"/"+splittext;
temp = new XFile(url);
in = new XFileInputStream(temp);
fileList = temp.list();
}
BufferedReader reader = new BufferedReader(new InputStreamReader(in,"GBK"));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
}
public static void main(String[] args) throws IOException {
String ip ="172.19.152.32";
String dir = "nfs";
NFS nfs = new NFS();
nfs.NFSconnection(ip,dir);
nfs.coming("com/gdin/edu/test1.txt");
}
}以上就是小编今天的分享了,希望可以帮助到大家。