1.可以操作檔案2.按照位元組操作,位元組流
3.read讀和write寫都是此類中的api方法
4.能夠通過seek()方法隨意移動檔案的指標
randomaccessfile類對檔案的隨機訪問有兩種模式唯讀模式
讀寫模式
1.建立物件2.寫入操作randomaccessfile(file file,string mode);
建立從中讀取和向其中寫入的隨機訪問流,檔案通過file指定,模式通過string指定
randomaccessfile(string file,string mode)
建立從中讀取和向其中寫入的隨機訪問流,檔案通過string指定,模式通過string指定
mode的取值:
"r" 唯讀模式 read
"rw" 讀寫模式 read write
3.讀取操作void write(int b)
此方法會根據當前指標所在位置處寫入乙個位元組,只能使用整型的低8位
void write(byte b)
此方法會根據當前指標所在位置處寫入一組位元組
void write(byte b ,int offset , int len)
將len個位元組從指定的byte陣列寫入檔案,並從偏移量offset處開始
4.void getfilepointer()int read()
從檔案中讀取出乙個byte位元組,填充到整型的低8位如果返回-1,表示
讀取到檔案的末尾 eof end of file
int read(byte b)
從指標指向的位置開始讀取若干位元組,儲存到位元組陣列中,將讀取的位元組
按照順序放在位元組陣列相對應的位置上
返回值為讀取到位元組數,也可以說成長度
返回值為-1,則讀取到檔案的末尾
int read(byte b , int offset , int len)
將最多len個資料位元組從檔案中讀入byte陣列中,並從便宜量offset處開始儲存
5.void seek(long position)返回此檔案中的當前偏移量
int skipbytest(int n)設定到此檔案開頭0到檔案指標偏移量,在該位置發生下一處讀取或寫入操作
用此方法可以跳過一些少量的位元組,可以是整數(如果是負數或零就不進行跳過)
/**
*此方法是把檔案讀入記憶體
*/public arraylist<
byte
>
testmethod1()
throws exception
else
} raf.
close()
;return al;
}/**
*此方法是把記憶體寫到本地
*/@test
public
void
testmethod2()
throws exception
else
}
IO流之字元流
字元流是為了方便我們讀寫文字檔案,在換句話說,字元流只能讀寫文字檔案,其他型別的檔案讀寫不了。outputstreamwriter 是字元流通向位元組流的橋梁 可使用指定的 charset 將要寫入流中的字元編碼成位元組。它使用的字符集可以由名稱指定或顯式給定,否則將接受平台預設的字符集。使用編碼表...
IO流之字元流
字元流產生的原因 1.每次只能夠讀取乙個位元組或者乙個位元組陣列,每次在需要轉換成字元或者字串的時候不是很方便 2.不同的作業系統針對換行符的處理不方便 3.有的時候會出現中文亂碼 中文佔兩個位元組,如果針對中文中某個位元組做了轉換或者顯示,就會出現亂碼 4.如果需要讀取某一行資料,非常不方便 編碼...
IO之字元流
在程式中乙個字元等於兩個位元組。1 字元輸出流 writer 抽象類,需要通過filewriter子類進行例項化 public filewriter file file throws ioexcrption writer類的常用方法 public abstract void close 0 thro...