首页 > 代码库 > RandomAccessFile--随机访问文件
RandomAccessFile--随机访问文件
RandomAccessFile:
特点:
1.只能操作文件
2.既能读,有能写
3.维护了一个byte数组,内部定义了字节流的读取和写入
4.通过对指针的操作可以实现对文件的任意位置的读取和写入
功能:getFilePointer seek用于操作文件指针的方法。
注:随机读写并不是说把数据写入任意一个随机的文件中,而是在指定的文件中通过文件指针实现在该文件指定位置的读取和写入。
import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFile;public class RandomAccessFileDemo { public static void main(String[] args) throws IOException { /* * RandomAccessFile * 特点: * 1.只能操作文件 * 2.既能读,有能写 * 3.维护了一个byte数组,内部定义了字节流的读取和写入 */ // writeFile(); readFile(); } public static void readFile() throws IOException { RandomAccessFile raf = new RandomAccessFile("tempfile\\random.txt","r"); //随机读取,只要通过设置指针的位置即可 raf.seek(8); byte[] buf = new byte[4]; raf.read(buf); String name = new String(buf); int age = raf.readInt(); System.out.println(name+":"+age); raf.close(); } public static void writeFile() throws IOException { //1.创建一个随机访问文件的对象 //文件不存在,则创建,存在,则不创建不覆盖 RandomAccessFile raf = new RandomAccessFile("tempfile\\random.txt","rw"); //2.写入姓名和年龄// raf.write("张三".getBytes());// raf.writeInt(97);//保证整数的字节原样完整性// raf.write("李四".getBytes());// raf.writeInt(99);//保证整数的字节原样完整性 //3.随机写入 raf.seek(8);//设置指针的位置,可以随时修改文件里面的数据 raf.write("王五".getBytes()); raf.writeInt(100); System.out.println(raf.getFilePointer()); //随机访问时希望数据有点规律 raf.close(); }}
RandomAccessFile--随机访问文件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。