随机访问文件:表示可以在该文件任何位置读取数据。
public class RandomAccessFileDemo { public static void main(String[] args) throws Exception { File f = new File("raf.txt"); //write(f); read(f); } private static void read(File f) throws Exception { //r表示只读 RandomAccessFile raf = new RandomAccessFile(f,"r"); System.out.println("文件指针位置:"+ raf.getFilePointer());//0 byte b = raf.readByte(); System.out.println(b);//64 System.out.println("文件指针位置:"+ raf.getFilePointer());//1 String str = raf.readUTF(); System.out.println(str);//邓肯 System.out.println("文件指针位置:"+ raf.getFilePointer());//9 raf.seek(0);//设置文件指针位置 System.out.println("文件指针位置:"+ raf.getFilePointer());//0 raf.skipBytes(9);//设置文件指针跳过9个字节 System.out.println("文件指针位置:"+ raf.getFilePointer());//9 int i = raf.readInt(); System.out.println(i); System.out.println("文件指针位置:"+ raf.getFilePointer());//13 raf.close(); } private static void write(File f) throws Exception { //rw表示读写 RandomAccessFile raf = new RandomAccessFile(f,"rw"); raf.writeByte(65); raf.writeUTF("邓肯");//使用的是修改之后的UTF-8,多两个字节 raf.writeInt(20); raf.close(); } }
RandomAccessFile经常用来做多线程下载:
1. 多线程
2. 多点下载
时间: 2024-12-16 01:01:24