Java的RandomAccessFile对文件内容进行读写
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java的RandomAccessFile对文件内容进行读写,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2496字,纯文字阅读大概需要4分钟。
内容图文
![Java的RandomAccessFile对文件内容进行读写](/upload/InfoBanner/zyjiaocheng/457/c812eedca4004c74b590e97c013336d9.jpg)
我们知道Java的文件模型,文件硬盘上的文件是byte byte byte的字节进行存储的,是数据的集合。下面就是用这个类的步骤。
(1)打开指定的文件,有两种模式“rw”(读写) “r”(只读),创建对象,并且指定file和模式,例如:
RandomAccessFile ac=new RandomAccessFile(file,”rw”);
因为它支持随机访问文件,所以他引入了指针,可以通过指针来写入写出在指定的位置。文件指针,打开文件时指针在开头pointer=0
(2)RandomAccessFile的往文件中写的方法(还有其他的写方法)
Ac.write(int)----->只能写一个字节(后八位),同时文件指针也会移动,指向下一个位置。
(3)RandomAccessFile读的方法(还有其他的读方法)
int b=ac.read()--->读一个字节
(4)文件读写完毕后必须要把他关闭,调用close()的方法。下面就是例子:
//创建相对路径的文件,就是在这个项目中创建一个文件夹 File file=new File("random"); if(!file.exists()) { file.mkdir(); } File fileName=new File(file,"javaio.txt"); if(!fileName.exists()) { fileName.createNewFile();//创建文件 } //创建一个RandomAccessFile的对象,并指定模式rw,能读能写, //注意:必须是文件,不能是路径 RandomAccessFile raf=new RandomAccessFile(fileName,"rw"); //获取此时的文件指针的位置,起始位置为0 System.out.println(raf.getFilePointer()); //向文件中写入字符A,字符类型有两个字节,但她写入的是后八位的字节 //字符A正好可以用后八位的字节表示出来 raf.write(‘A‘); //字符的位置会自动向后移动,文件指针会向后自动移动 System.out.println("输入一个字符之后,文件指针的位置"+raf.getFilePointer()); raf.write(‘B‘); //每次write只能写入一个字节,如果要把i写进去,就需要写四次 int i=0x7fffffff; raf.write(i>>>24 & 0xff);//写入高八位的 raf.write(i>>>16 & 0xff); raf.write(i>>>8 & 0xff); raf.write(i);//写入低八位 System.out.println("写入整数的时候文件指针的位置是"+raf.getFilePointer()); /** * writeInt()的内置方法 * public final void writeInt(int v) throws IOException { write((v >>> 24) & 0xFF); write((v >>> 16) & 0xFF); write((v >>> 8) & 0xFF); write((v >>> 0) & 0xFF); //written += 4; } */ //也可以直接写入int整数 raf.writeInt(i); //写入一个汉字,汉字为两个字节 String str="欢迎学习java"; byte[] b=str.getBytes("gbk"); raf.write(b); System.out.println("此时的长度为"+raf.length()); //读文件必须将文件指针放在开头位置 raf.seek(0); byte[] buf=new byte[(int)raf.length()]; raf.read(buf);//将内容写入buf字节数组中 String str1=new String(buf,"gbk"); System.out.println("文件中的内容为"+str1); raf.close();
Java的RandomAccessFile对文件内容进行读写
标签:
本文系统来源:http://www.cnblogs.com/dukc/p/4776868.html
内容总结
以上是互联网集市为您收集整理的Java的RandomAccessFile对文件内容进行读写全部内容,希望文章能够帮你解决Java的RandomAccessFile对文件内容进行读写所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。