private void deleFileContent(File fileName) {
RandomAccessFile raFile = null;
FileOutputStream outFile = null;
try {
raFile = new RandomAccessFile(fileName, "rw");
raFile.seek(30*1024); // 利用RandomAccessFile定位到第101个字节,之后再读文件
List<byte[]> list = new ArrayList<byte[]>();
byte[] b = new byte[1024];
while (-1 != raFile.read(b)) {
list.add(b); // 将所读取出来的内容以byte数组为单位存放到一个ArrayList当中
}
outFile = new FileOutputStream(fileName);
for (Iterator<byte[]> i = list.iterator(); i.hasNext(); ) {
outFile.write(i.next()); // 将ArrayList里的内容重新写回之前的文件
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (outFile != null) {
try {
outFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (raFile != null) {
try {
raFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
java RandomAccessFile 读取一定字节后的文件内容
最新推荐文章于 2024-07-15 22:55:18 发布