java多进程写进同一个文本出现文字错乱问题
private static Lock lock = new ReentrantLock();
public static void writer(String fileName, String content) {
lock.lock();
try {
// 打开一个随机访问文件流,按读写方式
RandomAccessFile randomFile = new RandomAccessFile(fileName, “rw”);
// 文件长度,字节数
long fileLength = randomFile.length();
//将写文件指针移到文件尾。
randomFile.seek(fileLength);
randomFile.writeBytes(“\r\n”);
randomFile.writeBytes(content);
randomFile.close();
} catch (IOException e){
e.printStackTrace();
} finally{
lock.unlock();
}
}
写文件时,调用这个方法就可以!
相关文章