RandomAccessFile类,即可以读取文件,也可以写入文件,功能比较强大,这种读取/写入通过一个参数来控制。
通过RandomAccessFile类的方法,可以设置和测定文件指针的位置,因此可以在文件的各种位置读取或写入文件。
案例如下:
读取file81.txt中的内容,并把它写入到fie82.txt中。注意,在file82.txt中只能添加新内容,不能覆盖原有的内容。
package cn.unit12.file;
import java.io.RandomAccessFile;
public class File8 {
public static void main(String[] args) {
RandomAccessFile raf1,raf2;
try{
raf1 = new RandomAccessFile("D:\\Workspaces\\MyEclipse 8.5\\JiChu\\src\\cn\\unit12\\file\\file81.txt", "r");
raf2 = new RandomAccessFile("D:\\Workspaces\\MyEclipse 8.5\\JiChu\\src\\cn\\unit12\\file\\file82.txt", "rw");
long len1 = raf1.length(),len2 = raf2.length();
raf2.seek(len2);
long fpt1=0;
raf2.writeBytes(""+'\n');//用空行隔开
while(fpt1<len1){
String str = raf1.readLine();
raf2.writeBytes(str+'\n');
fpt1 = raf1.getFilePointer();
}
raf1.close();
raf2.close();
}catch (Exception e) {
System.out.println("Exception");
}
}
}
效果如下:
(1)原始文件
(2)添加后的文件