JavaTM Platform
Standard Ed. 6

java.util.logging
클래스 FileHandler

java.lang.Object 
  상위를 확장 java.util.logging.Handler 
      상위를 확장 java.util.logging.StreamHandler 
          상위를 확장 java.util.logging.FileHandler


public class FileHandler
extends StreamHandler

단순 파일의 로깅 Handler 입니다.  

FileHandler 에서는, 지정된 파일, 또는 파일의 로테이션 세트의 어느 쪽인가에 기입할 수가 있습니다.  

파일의 로테이션 세트의 경우, 각 파일이 지정된 사이즈의 한도에 도달하면(자), 그 파일이 닫혀져 교환해 새로운 파일이 열립니다. 계속되어, 「0」, 「1」, 「2」등을 기본 파일명에 추가하는 것으로, 낡은 파일의 이름을 붙일 수 있습니다.  

디폴트로, 버퍼링은 입출력 라이브러리에서 사용 가능합니다만, 각 로그 레코드는 완료시에 플래시 됩니다.  

디폴트로,XMLFormatter 클래스는 포맷 처리에 사용됩니다.  

구성:FileHandler 는 디폴트로, 다음의 LogManager 구성 프로퍼티을 사용해 초기화됩니다. 프로퍼티이 지정되지 않은 경우 (또는 무효인 값을 가지는 경우), 지정된 디폴트 값가 사용됩니다.

패턴은, 실행시로 옮겨지는, 다음의 특수 컴퍼넌트를 포함한 캐릭터 라인으로부터 구성됩니다.

"%g" 필드가 지정되지 않고, 파일 카운트가 1 보다 큰 경우, 생성된 파일명의 말미의 닷의 후에 생성 번호가 추가됩니다.  

이와 같이, 예를 들어 카운트 2 를 가지는 패턴 「%t/java%g.log」에서는, 일반적으로 로그 파일을 Solaris 의 경우는 /var/tmp/java0.log 와 /var/tmp/java1.log 에 기입해, 한편, 일반적으로 Windows 95 의 경우는 C:\TEMP\java0.log 와 C:\TEMP\java1.log 에 기입합니다.  

생성 번호는 0, 1, 2 와 같은 연속 번호가 됩니다.  

일반적으로, 일의 필드 「%u」는 0 으로 설정됩니다. 다만,FileHandler 는, 파일명을 열려고 했을 때에 그 파일을 다른 프로세스가 현재 사용중인 것이 판명되었을 경우에는, 그 일의 번호 필드를 증분 해 재차 시도합니다. 이것이, 현재 사용되어 있지 않은 파일명을 FileHandler 가 찾아낼 때까지 반복해집니다. 중복이 있어, 「%u」필드가 지정되지 않는 경우, 파일명의 말미의 닷의 후에 추가됩니다. 이것은 자동적으로 추가되는 생성 번호의 후에 됩니다.  

이 때문에, 3 개의 프로세스의 모든 것이 fred%u. %g.txt 에 로그를 기록하려고 하는 경우, 프로세스의 로테이션의 차례에 따라서, 최초의 파일로서 fred0. 0. txt, fred1. 0. txt, fred2. 0. txt 를 사용하게 됩니다.  

중복을 일의의 ID 의 사용이, 로컬 디스크의 파일 시스템 사용시에 확실히 동작하도록, 단지 보증되는 것에 주의해 주세요.

도입된 버젼:
1.4

생성자 의 개요
FileHandler ()
          디폴트의 FileHandler 를 구축합니다.
FileHandler (String  pattern)
          지정된 파일명에 기입하도록(듯이) FileHandler 를 초기화합니다.
FileHandler (String  pattern, boolean append)
          옵션의 추가 모드로, 지정된 파일명을 기입한다.
FileHandler (String  pattern, int limit, int count)
          일련의 파일에 기입하도록(듯이) FileHandler 를 초기화합니다.
FileHandler (String  pattern, int limit, int count, boolean append)
          생략 가능한 추가 모드로 일련의 파일에 기입하도록(듯이) FileHandler 를 초기화합니다.
 
메소드의 개요
 void close ()
          모든 파일을 닫습니다.
 void publish (LogRecord  record)
          LogRecord 를 포맷 해 발행합니다.
 
클래스 java.util.logging. StreamHandler 로부터 상속된 메소드
flush , isLoggable , setEncoding , setOutputStream
 
클래스 java.util.logging. Handler 로부터 상속된 메소드
getEncoding , getErrorManager , getFilter , getFormatter , getLevel , reportError , setErrorManager , setFilter , setFormatter , setLevel
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

FileHandler

public FileHandler()
            throws IOException ,
                   SecurityException 
디폴트의 FileHandler 를 구축합니다. 이것은 항상 LogManager 프로퍼티 (또는 그 디폴트 값)으로부터 구성됩니다.  

예외:
IOException - 파일을 열 때 입출력의 문제가 발생했을 경우
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우
NullPointerException - pattern 프로퍼티이 빈 상태(empty)의 캐릭터 라인인 경우

FileHandler

public FileHandler(String  pattern)
            throws IOException ,
                   SecurityException 
지정된 파일명에 기입하도록(듯이) FileHandler 를 초기화합니다.  

지정된 패턴의 인수가 파일명의 패턴으로서 사용되어 파일의 제한이 제한없이 설정되어 파일 카운트가 1 으로 설정되어 있는 경우 이외는,FileHandler 는,LogManager 프로퍼티 (또는 그 디폴트 값)에 근거해 구성됩니다.  

기입해지는 데이터의 총량에 제한이 없기 때문에, 주의해 사용해 주세요.

파라미터:
pattern - 출력 파일의 이름
예외:
IOException - 파일을 열 때 입출력의 문제가 발생했을 경우
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우
IllegalArgumentException - pattern 가 빈 상태(empty)의 캐릭터 라인인 경우

FileHandler

public FileHandler(String  pattern,
                   boolean append)
            throws IOException ,
                   SecurityException 
옵션의 추가 모드로, 지정된 파일명을 기입한다. FileHandler 를 초기화하고 있습니다.  

지정된 패턴의 인수가 파일명의 패턴으로서 사용되어 파일의 제한이 제한없이 설정되어 파일 카운트가 1 으로 설정되어 추가 모드의 지정된 append 인수로 설정되어 있는 경우 이외는,FileHandler 는,LogManager 프로퍼티 (또는 그 디폴트 값)에 근거해 구성됩니다.  

기입해지는 데이터의 총량에 제한이 없기 때문에, 주의해 사용해 주세요.

파라미터:
pattern - 출력 파일의 이름
append - 추가 모드를 지정한다
예외:
IOException - 파일을 열 때 입출력의 문제가 발생했을 경우
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우
IllegalArgumentException - pattern 가 빈 상태(empty)의 캐릭터 라인인 경우

FileHandler

public FileHandler(String  pattern,
                   int limit,
                   int count)
            throws IOException ,
                   SecurityException 
일련의 파일에 기입하도록(듯이) FileHandler 를 초기화합니다. 1 개의 파일로 지정된 대략의 제한량까지 기입해지면(자), 다른 파일이 열립니다. 출력처는, count 개의 일련의 파일의 사이에 순환합니다.  

지정된 패턴의 인수가 파일명의 패턴으로서 사용되어 파일의 제한이 제한 인수로 설정되어 파일 카운트가 지정된 count 인수로 설정되어 있는 경우 이외는,FileHandler 는,LogManager 프로퍼티 (또는 그 디폴트 값)에 근거해 구성됩니다.  

카운트는 적어도 1 이 아니면 안됩니다.

파라미터:
pattern - 출력 파일의 이름부의 패턴
limit - 임의의 1 개의 파일에 기입하는 최대 바이트수
count - 사용하는 파일수
예외:
IOException - 파일을 열 때 입출력의 문제가 발생했을 경우
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우
IllegalArgumentException - limit < 0, 또는 count < 1 의 경우
IllegalArgumentException - pattern 가 빈 상태(empty)의 캐릭터 라인인 경우

FileHandler

public FileHandler(String  pattern,
                   int limit,
                   int count,
                   boolean append)
            throws IOException ,
                   SecurityException 
생략 가능한 추가 모드로 일련의 파일에 기입하도록(듯이) FileHandler 를 초기화합니다. 1 개의 파일로 지정된 대략의 제한량까지 기입해지면(자), 다른 파일이 열립니다. 출력처는, count 개의 일련의 파일의 사이에 순환합니다.  

지정된 패턴의 인수가 파일명의 패턴으로서 사용되어 파일의 제한이 제한 인수로 설정되어 파일 카운트가 지정된 count 인수로 설정되어 추가 모드가 지정된 append 인수로 설정되어 있는 경우 이외는,FileHandler 는,LogManager 프로퍼티 (또는 그 디폴트 값)에 근거해 구성됩니다.  

카운트는 적어도 1 이 아니면 안됩니다.

파라미터:
pattern - 출력 파일의 이름부의 패턴
limit - 임의의 1 개의 파일에 기입하는 최대 바이트수
count - 사용하는 파일수
append - 추가 모드를 지정한다
예외:
IOException - 파일을 열 때 입출력의 문제가 발생했을 경우
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우
IllegalArgumentException - limit < 0, 또는 count < 1 의 경우
IllegalArgumentException - pattern 가 빈 상태(empty)의 캐릭터 라인인 경우
메소드의 상세

publish

public void publish(LogRecord  record)
LogRecord 를 포맷 해 발행합니다.

오버라이드(override):
클래스 StreamHandler 내의 publish
파라미터:
record - 로그 이벤트의 설명. null 레코드는 아무 통지도 없게 무시되어 발행되지 않는다

close

public void close()
           throws SecurityException 
모든 파일을 닫습니다.

오버라이드(override):
클래스 StreamHandler 내의 close
예외:
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.