JAVA中randomfile_java中的RandomAccessFile的用法

Java的RandomAccessFile提供对文件的读写功能,与普通的输入输出流不一样的是RamdomAccessFile可以任意的访问文件的任何地方。这就是“Random”的意义所在。

RandomAccessFile的对象包含一个记录指针,用于标识当前流的读写位置,这个位置可以向前移动,也可以向后移动。RandomAccessFile包含两个方法来操作文件记录指针。

long getFilePoint():记录文件指针的当前位置。

void seek(long pos):将文件记录指针定位到pos位置。

RandomAccessFile包含InputStream的三个read方法,也包含OutputStream的三个write方法。同时RandomAccessFile还包含一系列的readXxx和writeXxx方法完成输入输出。

RandomAccessFile的构造方法如下

51b5e0057cc53593a2fdca18f24449ba.png

mode的值有四个

"r":以只读文方式打开指定文件。如果你写的话会有IOException。

"rw":以读写方式打开指定文件,不存在就创建新文件。

"rws":不介绍了。

"rwd":也不介绍。

下面是从中间开始读取文件:

import java.io.RandomAccessFile;

public class work {

public static void main(String[] args) throws Exception{

RandomAccessFile raf=new RandomAccessFile("work","r");

raf.seek(4);

byte []buffer=new byte[100];

int len=0;

while((len=raf.read(buffer, 0, 100))!=-1)

{

System.out.println(new String(buffer,0,len));

}

}

}

import java.io.RandomAccessFile;

public class work {

public static void main(String[] args) throws Exception{

RandomAccessFile raf=new RandomAccessFile("work","r");

raf.seek(4);

byte []buffer=new byte[100];

int len=0;

while((len=raf.read(buffer, 0, 100))!=-1)

{

System.out.println(new String(buffer,0,len));

}

}

}

下面是在文件最后加入内容:

import java.io.RandomAccessFile;

public class work {

public static void main(String[] args) throws Exception{

RandomAccessFile raf=new RandomAccessFile("work","rw");

raf.seek(raf.length());

raf.write("hello world!".getBytes());

raf.close();

}

}

import java.io.RandomAccessFile;

public class work {

public static void main(String[] args) throws Exception{

RandomAccessFile raf=new RandomAccessFile("work","rw");

raf.seek(raf.length());

raf.write("hello world!".getBytes());

raf.close();

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513413.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

官宣|Apache Flink 1.13.0 正式发布,流处理应用更加简单高效!

简介: Flink 1.13.0 版本让流处理应用的使用像普通应用一样简单和自然,并且让用户可以更好地理解流作业的性能。 ​翻译 | 高赟 Review | 朱翥、马国维 Flink 1.13 发布了!Flink 1.13 包括了超过 200 名贡献者所提交的 1000 多项修复和优化…

lightning接口_Lightning太赚钱?iPhone永远不会用Type-C

欧盟日前通过了法案,要求在欧洲销售的各手机制造商要统一充电接口,全部采用USB Type-C接口,但这可能让一直使用Lightning(闪电)充电接口的Apple受到很大影响。虽说目前苹果的Mac电脑、iPad平板电脑以及智能音箱等部分产品都开始使用USB Type-…

这个冬天,头秃了,口袋也空了......

秋天里的第一杯奶茶刚喝完,冬天里的第一条秋裤就要安排上!不让加班的程序员,从此的生活便不只有脑袋秃秃,还有口袋空空!从外包出来,没想到新的面试让我手忙脚乱外包虐我千百遍,只能待她如初恋&a…

云数据仓库的未来趋势:计算存储分离

简介: 随着云时代的到来,数据库也开始拥抱云数据库时代,各类数据库系统在各内外云平台百花齐放,有开源的MySQL、PostgreSQL、MongoDB,传统数据库厂商的SQLServer、Oracle,云厂商自研的Aurora、Redshift、Po…

Java内存配太大导致fullgc_记一次因为短命大对象导致fullGC的问题

写在前面java内存申请和释放均是由jvm在控制。而释放往往会出现各种各样的问题,经常一个引用没处理好就引起内存泄漏,最后引发OOM。如果发生在重要业务系统还可能出现严重的生产事故。 因此内存使用一定要谨慎,特别是引用要及时断链。虽然jvm…

异步编程到底在说啥?

作者 | 码农的荒岛求生来源 | 码农的荒岛求生之前很多同学在微信上问能不能讲讲异步编程是怎么一回事儿,今天就和大家简单聊一聊这个话题。我们以函数调用为例,假设有这样的代码:void B() {lines read(filename);sum(lines); }void A() {...…

如何让评审人爱上我

简介: 今天小编作为一个开发者,放下外部的客观因素,仅从一个代码的实现者,一个被评审人的角度去思考如何让评审变得高效而富有意义。换句话说:如何让评审人爱上我(被评审人)。 众所周知&#x…

centos8安装mysql_CentOS8+FreeRadius+Mysql8.0+daloRadius建立Radius服务器

Linux发行版:CentOS8-1905数据库:Mysql8.0create WEB软件:httpddaloRadius前端使用PHPyum -y install update yum -y install httpd //web服务器 yum -y install vim // yun -y install wget // yum -y install net-to…

2025年公有云或将服务中国过半数字经济

简介: 2025年公有云或将服务中国过半数字经济阿里云研究院 高级战略总监 麻芃2020年,疫情“黑天鹅”对全球经济社会运行造成剧烈冲击,但数字经济的引擎作用却逆势凸显。去年我国数字经济整体规模达到39.2万亿元,实现9.7%的高速增长…

php mysql 绕过_PHP中md5绕过

一、md5($password,true)的SQL注入问题这里要提到一下MySQL中的数值比较问题。1、当数字和字符串比较时,若字符串的数字部分(需要从头开始)和数字是相同的,那么则返回的是true。select if(1"1abcd","等于","不等于") as t…

重磅发布:微服务引擎 MSE 专业版

简介: 性能提升 10 倍,更高的 SLA 保障,新用户限时抢购 8 折资源包。 微服务引擎 MSE 专业版发布,支持 Nacos 2.0 ,相比基础版,专业版具有更高的 SLA 保障,性能提升十倍,99.95%可用…

45分钟,411个中小品牌天猫双11实现新跨越

CSDN从天猫获悉,今年天猫双11,有一批中小品牌实现跨越式增长。截至11月11日0点45分,已有411个去年成交额过百万的中小品牌,今年销售额突破千万;更有40个去年双11成交额千万级的品牌,在今年双11成交额突破了…

组装台式电脑配置清单_攒机必备!各种价位的台式电脑配置清单!

点击上方「软件分享云」关注我们台式机,是一种独立相分离的计算机,完完全全跟其它部件无联系,相对于笔记本和上网本体积较大,主机、显示器等设备一般都是相对独立的,一般需要放置在电脑桌或者专门的工作台上。因此命名…

达摩院重要科技突破!空天数据库引擎Ganos解读

简介: Ganos空天数据库引擎是李飞飞带领的达摩院数据库与存储实验室研发的新一代位置智能引擎,采用了平台即服务、多模融合、计算下推和云原生全新处理架构,为政府、企事业单位、泛互联网客户提供移动对象、空间/时空、遥感多模态数据混合存储…

brainfuck 在线_酒店在线声誉持久战 重视社媒舆论 保持品牌一致性

维护品牌或酒店声誉是一场持久战,这对塑造积极的品牌认知和提升客户满意度至关重要。声誉管理包括两个关键部分:引导客人评价和公众舆论,并以适当的方式进行反馈。就在线声誉管理而言,品牌还需要注意另外一点,公众会在…

2021天猫双11:阿里巴巴业务已全部跑在阿里云上

“今年天猫双11是首个100%的云上双11,成功扛住了全球规模最大的流量洪峰。”11月11日,阿里巴巴首席技术官程立表示,阿里巴巴业务已全部跑在阿里云上,体验如丝般顺滑。经过历年双11的“大考”,阿里技术实现了多级跳跃。…

从“嵌入式”到“物联网”有哪些变化?

简介: 经过几十年发展,嵌入式技术已经用在了我们生活中的方方面面,但是嵌入式始终都带有小众,专业性强的属性,让很多非嵌入式领域的同学望而却步。近十几年的发展,物联网覆盖了越来越多领域,包括…

Serverless Devs 的官网是如何通过 Serverless Devs 部署的

简介: 只有自己吃自己的狗粮,自己做的东西才不“🐶”。Serverless Devs 自发展之处到现在,已经经历了几个月的时间,在这几个月,Serverless Devs 的成长是迅速的,这很大一部分的原因是“我们在吃…

crontab 改成只读模式_以“三合一”模式推动提质增效 助力公司高质量发展

近日,模块制造厂圆满完成位于原化机西部院内的吉林制造基地新老厂区的资源整合、机械设备修理以及厂区内设备土建基础施工、功能配套设备购置等工作,积极推进新厂区环评、厂区注册地址变更,使制造基地继承了老厂区所拥有的压力容器、超限设备…

5G 落地进入爆发期,是时候让毫米波登场了

作者 | 小枣君来源 | 鲜枣课堂2021年,全球5G网络建设和发展取得了不俗的成绩。根据GSA于8月发布的数据,已有70多个国家及地区的超过175家运营商,推出了5G商用服务。还有285家运营商,正在投资部署5G。中国的5G建设步伐,…