1. 程式人生 > >Java基礎-IO流對象之隨機訪問文件(RandomAccessFile)

Java基礎-IO流對象之隨機訪問文件(RandomAccessFile)

str 文件的 指向 poi mod 指針 println span www.

            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:[email protected] 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)