java RandomAccessFile类的用法
来源:互联网 发布:顶点软件 603383 股吧 编辑:程序博客网 时间:2024/06/06 03:05
Java的RandomAccessFile提供对文件的读写功能,与普通的输入输出流不一样的是RamdomAccessFile可以任意的访问文件的任何地方。这就是“Random”的意义所在。
RandomAccessFile的对象包含一个记录指针,用于标识当前流的读写位置,这个位置可以向前移动,也可以向后移动。RandomAccessFile包含两个方法来操作文件记录指针。
long getFilePoint():记录文件指针的当前位置;
void seek(long pos):将文件记录指针定位到pos位置;
RandomAccessFile包含InputStream的三个read方法,也包含OutputStream的三个write方法。同时RandomAccessFile还包含一系列的readXxx和writeXxx方法完成输入输出。
mode的值有四个
"r":以只读文方式打开指定文件。如果你写的话会有IOException;
"rw":以读写方式打开指定文件,不存在就创建新文件;
"rws":不介绍了。
"rwd":也不介绍。
下面是从中间开始读取文件
import java.io.RandomAccessFile;
public class Work {
public static void main(String[] args) throws Exception{
RandomAccessFile raf=new RandomAccessFile("work","r");
raf.seek(4);
byte []buffer=new byte[100];
int len=0;
while((len=raf.read(buffer, 0, 100))!=-1)
{
System.out.println(new String(buffer,0,len));
}
}
}
import java.io.RandomAccessFile;
public class Work {
public static void main(String[] args) throws Exception{
RandomAccessFile raf=new RandomAccessFile("work","r");
raf.seek(4);
byte []buffer=new byte[100];
int len=0;
while((len=raf.read(buffer, 0, 100))!=-1)
{
System.out.println(new String(buffer,0,len));
}
}
}
下面是在文件最后加入内容
import java.io.RandomAccessFile;
public class Work {
public static void main(String[] args) throws Exception{
RandomAccessFile raf=new RandomAccessFile("work","rw");
raf.seek(raf.length());
raf.write("hello world!".getBytes());
raf.close();
}
}
import java.io.RandomAccessFile;
public class Work {
public static void main(String[] args) throws Exception{
RandomAccessFile raf=new RandomAccessFile("work","rw");
raf.seek(raf.length());
raf.write("hello world!".getBytes());
raf.close();
}
}
至于向文件中间添加内容的话,也是很好解决的。先将指针移到指定位置,把后面的保存到临时文件,再将指针移到指定位置,添加内容,然后再将临时文件的内容加到后面就可以了。
- java RandomAccessFile类的用法
- JAVA 的 RandomAccessFile类用法
- java中的RandomAccessFile的用法
- java中的RandomAccessFile的用法
- Java中RandomAccessFile的用法
- java中RandomAccessFile类用法
- java的RandomAccessFile类
- java的RandomAccessFile类
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- Java RandomAccessFile用法
- hashtable的原理
- java源代码String.java
- 防止Windows安装更新后自动重启
- UVa 11865 Stream My Contest 二分+最小树形图
- POJ1936-All in All(java版)
- java RandomAccessFile类的用法
- TQ2440 Uart的基本应用
- 正确处理好工作任务和自身技术发展的关系
- strcpy和memcpy的区别
- Raspberry - MAC上使用USB转串口线连接访问树莓派
- 动态规划经典入门
- 《数据结构、算法与应用》8.(顺序查找数组中第一个出现指定元素的位置)
- 昨晚想了一宿交的研究生作业
- PipedInputStream类与PipedOutputStream类完全解析