본문 바로가기
카테고리 없음

Java RAF (RandomAccessFile) - 사용법

by ByteBridge 2015. 10. 9.
반응형


자바 7 에서도 C언어의 fseek 와 lseek같은 기능을 제공한다.

C 언어에서 fseek 같은 경우  파일 포인터를 사용하여 파일의 위치로 접근할수있다.

자바에서도 동일한 기능을 할수있는 RandomAccessFile 클래스를 사용하면 가능하다.



public class RandomAccessFileDemo 

{

   public static void main(String[] args) 

   {

      try 

      {

         // create a new RandomAccessFile with filename test

         RandomAccessFile raf = new RandomAccessFile("test.txt", "r");

// 모드 값은 rw,w,r 과 같이 다양하게 선택 가능.

         raf.seek(0);// 0 이면 처음부터

         // print the line

         String line = "";

         while((line = raf.readLine()) != null)

         {

        System.out.println(line);

         }

         System.out.println("filePt: "+raf.getFilePointer());

         raf.skipBytes(2);//엔터 값에 대해 skip 해주어야 다음 라인을 읽어 줄수있음. 

         

      } 

      catch (IOException ex) 

      {

         ex.printStackTrace();

      }


   }

}

위와 같은 코드를 사용하여 log rotate 에 적용가능 할것 같다.

반응형