指定位置写入文件信息
注意:这里的写入会覆盖掉后面的信息,所以需要预留占位符
package com.lks.file;
import org.apache.log4j.Logger;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
/**
* Created by lks on 2017-03-17.
*/
public class FileWriteHeadAndEnd {
public static Logger log = Logger.getLogger(FileWriteHeadAndEnd.class);
public static void writeHeadAndEnd(String filepath){
File file = new File(filepath);
if(!file.exists() && !file.isDirectory()){
try {
file.createNewFile();
} catch (IOException e) {
log.error("文件创建失败",e);
}
}
try (RandomAccessFile raw = new RandomAccessFile(file,"rw")){
raw.seek(0l);
//写文件头时候需要预留占位符
raw.write("文件头!!!".getBytes());
raw.seek(raw.length());
raw.write("写入文件末尾!!</end>".getBytes());
raw.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
log.error("文件没有发现",e);
} catch (IOException e) {
e.printStackTrace();
log.error("Io异常",e);
}
}
public static void main(String[] args) {
FileWriteHeadAndEnd.writeHeadAndEnd("d:/abd.txt");
}
}