Java基础-IO流对象之随机访问文件(RandomAccessFile)
Posted 尹正杰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础-IO流对象之随机访问文件(RandomAccessFile)相关的知识,希望对你有一定的参考价值。
Java基础-IO流对象之随机访问文件(RandomAccessFile)
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.RandomAccessFile简介
此类的实例支持对随机访问文件的读取和写入。随机访问文件的行为类似存储在文件系统中的一个大型 byte 数组。存在指向该隐含数组的光标或索引,称为文件指针;输入操作从文件指针开始读取字节,并随着对字节的读取而前移此文件指针。
二.RandomAccessFile用法展示
1 /* 2 @author :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6 7 package cn.org.yinzhengjie.note6; 8 9 import java.io.RandomAccessFile; 10 11 /* 12 * 13 * RandomAccessFile(File file,String mode) 14 * RandomAccessFile(String name,String mode) 15 */ 16 17 18 public class RandomAccessFileDemo { 19 public static void main(String[] args) throws Exception { 20 RandomAccessFile raf = new RandomAccessFile("yinzhengjie.txt", "rw"); 21 //写入字节类型的数据 22 raf.write(97); 23 //打印文件中当前光标位置 24 System.out.println(raf.getFilePointer()); 25 //写入int类型的数据 26 raf.writeInt(200); 27 System.out.println(raf.getFilePointer()); 28 //写入字符的数据 29 raf.writeUTF("hello"); 30 System.out.println(raf.getFilePointer()); 31 raf.writeUTF("world"); 32 System.out.println(raf.getFilePointer()); 33 34 //定位到字符串偏移量,如果是字符的话,需要移动的位置是2+字符长度。 35 raf.seek(12); 36 //读一个字符串 37 String s = raf.readUTF(); 38 System.out.println(s); 39 System.out.println(raf.getFilePointer()); 40 raf.close(); 41 } 42 } 43 44 /* 45 以上代码执行结果如下: 46 1 47 5 48 12 49 19 50 world 51 19 52 */
以上是关于Java基础-IO流对象之随机访问文件(RandomAccessFile)的主要内容,如果未能解决你的问题,请参考以下文章