import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.io.RandomAccessFile; /** * 监控文件大小变化,读取文件追加内容*/ public class FileTest { public static void main(String[] args) { try { long len = 0;//初始值赋0,让RandomAccessFile第一次读取的文件的时候指针指向文件开头 String fileName = "test.txt"; while(true){ RandomAccessFile raf = new RandomAccessFile(new File(fileName),"r"); long len1 = raf.length();//获取文件大小 if(len1 > len){ raf.seek(len);//若文件大小增长了,将文件指针指向上次读取完后的位置 String str1 = raf.readLine(); while(str1 != null){ System.out.println(str1); str1 = raf.readLine(); } len = len1; } Thread.sleep(2*1000); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } }