File類通過使用 . 來獲取當前路徑,從而取得文件。
File f = new File(".\\Res\\Temp.txt");
或者直接使用空構造函數:
File f = new File("");
此時f.getpath()相當於當前目錄。
之后讀取文件可以使用流:
BufferedReader br = new BufferedReader(new FileReader(f));
來讀取,其中FileReader是InputStreamReader的子類。
想清空文件內容直接使用
FileWriter fw = new FileWriter(); Fw.write("");
就可以。
如果想隨機讀寫文件,則應當RandomAccessFile類來進行。
此類包含一個pointer可以使用seek方法改變pointer位置。
RandomAccessFile raf = new RandomAccessFile(f.getCanonicalPath(),"rws");
raf.seek(raf.length());
raf.write(bb.array());
通過這種方法實現追加寫,寫入時記得
Charset cs = Charset.forName("UTF-8"); ByteBuffer bb = cs.encode(cb);
變成UTF編碼存入文件。
RandomAccessFile也有readbyte等方法,記得使用decode方法解決編碼的問題,不然會產生亂碼。
還有一點要注意就是使用seek的時候,新的寫入並不是插入(Insert),而是覆寫(Overwriting),寫入時要多加注意。