`

操作分布式文件之五:如何读写远程文件

阅读更多

FttpAdapter是通过FttpReadAdapter来直接读取远程文件内容

FttpAdapter fa = new FttpAdapter("fttp://10.232.20.151/home/log/1.log");
FttpReadAdapter reader = fa.getFttpReader();
byte[] bts = reader.readAll();

上面是读取整个文件的内容,如果文件内容很大,每次只读取一部分内容,需要指定FttpReadAdapter的读取范围:
FttpReadAdapter reader = fa.getFttpReader(5,10);
byte[] bts = reader.readAll();
上面表示从第5个字节,往后读10个字节
fa.getFttpReader(5,FileAdapter.m(8)) 从第5个字节往后读8M
fa.getFttpReader(5,FileAdapter.k(512)) 从第5个字节往后读512K

 

FttpAdapter是通过FttpWriteAdapter来直接写入远程文件内容
FttpAdapter fa = new FttpAdapter("fttp://10.232.20.151/home/log/1.log");
FttpWriteAdapter writer = fa.getFttpWriter();
int r = writer.write("hello world".getBytes());
上面的FttpWriteAdapter没有指定写入范围,默认为追加在文件末尾,如果需要指定范围:
FttpWriteAdapter writer = fa.getFttpWriter(5,10);
int r = writer.write("hello world".getBytes());
上面表示从第5个字节开始,往后写10个字节,写入内容为“hello world”,如果写入内容超出10则截断,不够则填补空位。

 

除readAll和write外,也提供readAllSafety和writeSafety方法,它们用法一样,但是代表排它读写,主要用于并发读写。

 

对于数字存储,FttpAdapter也提供整形读写,可以使用getIntFttpReader和getIntFttpWriter,操作跟字节读写类似,只是写入或者返回的是整数,比如:
fa.getIntFttpReader(5,3) 表示从第5个整数开始,往后读3个整数
fa.getIntFttpWriter().writeInt(new int[]{1,2,3}) 表示将一个整数数组写入文件末尾
同样,整形读写也都提供排它读写

 

FttpWriteReadDemo演示了对远程文件的读写操作

邮箱:Fourinone@yeah.net
企鹅群:241116021
demo源码指南及开发包下载地址:
http://www.skycn.com/soft/68321.html

 

分享到:
评论

相关推荐

    Fourinone分布式并行计算四合一框架

     比如以这样的方式读取远程文件:  FttpAdapter fa = FttpAdapter("fttp://v020138.sqa.cm4/home/log/a.log");  fa.getFttpReader().readAll();  提供对集群文件的操作支持,包括:  1、元数据访问,添加...

    JAVA文件传输的实现.rar

    Java文件传输的实现可以应用于各个领域,包括但不限于文件备份、文件同步、远程文件访问、在线文档管理等。 在企业级应用中,可以作为分布式系统中的文件传输组件,实现不同节点之间的文件共享和同步。 通过Java文件...

    Fourinone分布式计算框架

    比如按照“农民工”的数量将源数据切分成多少份,然后远程分配给“农民工”节点进行计算处理,它处理完的中间结果数据不限制保存在hdfs里,而可以自由控制保存在分布式缓存、数据库、分布式文件里。如果需要结果数据...

    计算中心分布式存储需求配置

    3. 扩展性:支持在线扩展,保障原系统中扩容数据不丢失且能进行正常数据读写前提下,支持已分配文件系统在线扩容,提供扩展性方案与线性扩展性能数据(存储池容量扩展性、吞吐扩展性、网络扩展性) 4. 数据可靠性...

    JAVA上百实例源码以及开源项目

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术,...

    分布式协调工具-ZooKeeper实现动态负载均衡

    3、分布式读写,更新请求转发,由leader实施 4、更新请求顺序进行,来自同一个client的更新请求按其发送顺序依次执行 5、数据更新原子性,一次数据更新要么成功,要么失败 6、实时性,在一定时间范围内,client能...

    fourinone-3.04.25

    比如以这样的方式读取远程文件: FttpAdapter fa = FttpAdapter("fttp://192.168.0.1/home/log/a.log"); fa.getFttpReader().readAll(); 提供对集群文件的操作支持,包括: 1、元数据访问,添加删除,按块拆分, 高...

    使用 Microsoft:registered: Azure:registered: 存储 Blob 的 3 种方法:使用 HTTPS 和 WASB-matlab开发

    在 MATLAB:registered: 中,您可以从远程位置读取和写入数据,例如 Amazon S3:trade_mark:(简单存储服务)、Microsoft:registered: Azure:registered: 存储 Blob 和 Hadoop:registered: 分布式文件系统 (HDFS:trade...

    JAVA上百实例源码以及开源项目源代码

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术,...

    SQLServer安全及性能优化

    DTC: Distributed Transaction Coordinator(分布式事务处理协调器),用于协调多个数据库、消息队列、文件系统等等资源管理器的事务,由于内部开发中并不使用这个功能,远程数据库服务器上也并不经常使用,因此建议...

    UNIX 高级教程系统技术内幕

    10.11 远程文件共亨(RFS)文件系统 10.12 RFS 结构 10.12.1 远程消息协议 10.12.2 有状态操作 10.13 RFS 实现 10.13.1 远程安装 10.13.2 RFS 客户和服务器 10.13.3 崩溃恢复 10.13.4 其他问题 10.14 客户端高速缓存 ...

    Hadoop从入门到上手企业开发

    034 讲解HDFS 文件读写流程 035 详解HDFS API之FileSystem方式基本操作一 036 HDFS Java API 两种方式介绍及使用URL API详解一 037 使用URL API详解二 038 使用HDFS FileSystem API 详解 039 HDFS文件系统读写流程及...

    Java高级程序设计实战教程第五章-Java序列化机制.pptx

    5.1 应用场景 在分布式环境下,当进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传输。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则...

    java 面试题 总结

    它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是...

    LabVIEW Internet Toolkit 6.0.2

    NI LabVIEW因特网工具包,...除了利用因特网之外,虚拟仪器也日益频繁地用于处理远程或分布式的应用。 使用NI LabVIEW因特网工具包,您可轻松地将各种电子通信功能(如:XML、CGI和FTP传输)集成到虚拟仪器应用程序中。

    java开源包1

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包11

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

Global site tag (gtag.js) - Google Analytics