文件的随机读写
public class Test07 {
public static void main(String[] args) {
try {
//Test07.testRandomAccessFileRead();
Test07.testRandomAccessFileWrite();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void testRandomAccessFileRead() throws Exception {
//RandomAccessFile的构造有两个参数,参数1是读写的文件的路径
//参数2是指定 RandomAccessFile 的访问模式
//r: 以只读方式打开
//rw:打开以便读取和写入
//rwd:打开以便读取和写入;同步文件内容的更新
//rws:打开以便读取和写入;同步文件内容和元数据的更新
//最常用是r和rw
RandomAccessFile ra = new RandomAccessFile("E:\java\idea\javaBasics\javaSE\基础语法\src\ioStream\Buffered\tt11.txt","r");
//ra.seek(0);//设置读取文件内容的起始点
ra.seek(7);//设置读取文件内容的起始点,来达到从文件的任意位置读取
byte[] bytes = new byte[1024];
int len=0;
while ((len=ra.read(bytes))!=-1){
System.out.println(new String(bytes,0,len));
}
ra.close();
}
public static void testRandomAccessFileWrite() throws Exception{
RandomAccessFile rw = new RandomAccessFile("E:\java\idea\javaBasics\javaSE\基础语法\src\ioStream\Buffered\tt11.txt", "rw");
//rw.seek(0);//设置写的起始点
//注意:如果是在文件开头或者中间的某个位置开始写的话,就会用写的内容覆盖掉等长度的原内容
rw.seek(rw.length());//设置写的起始点,rw.length()代表从文件的最后结尾开始写,也接收文件的追加
rw.write("你好".getBytes());
rw.close();
}
}