JavaTM Platform
Standard Ed. 6

javax.swing.text.html.parser
클래스 DocumentParser

java.lang.Object 
  상위를 확장 javax.swing.text.html.parser.Parser 
      상위를 확장 javax.swing.text.html.parser.DocumentParser
모든 구현된 인터페이스:
DTDConstants


public class DocumentParser
extends Parser

HTML 문서의 Parser 입니다. 실제로는 DTD 를 지정할 수 있습니다만, swing 의 html dtd 에는 이 클래스만을 사용하도록 해 주세요. HTML 의 InputStream 를 읽어들여, ParserCallback 클래스의 적절한 메소드를 호출합니다. 이 클래스는, HTMLEditorKit 가 HTML url 를 해석하는데 사용하는 디폴트의 퍼서입니다.

유효한 모든 태그, 및 암시되고 있지만 명시적으로는 지정되어 있지 않은 태그에 대해서, 콜백을 전합니다. 예를 들어, HTML 캐릭터 라인 (<p>blah)으로 정의되고 있는 것은 p 태그 뿐입니다. 콜백은 다음의 메소드를 검출합니다.

  1. handleStartTag(html, ...)
  2. handleStartTag(head, ...)
  3. handleEndTag(head)
  4. handleStartTag(body, ...)
  5. handleStartTag(p, ...)
  6. handleText(...)
  7. handleEndTag(p)
  8. handleEndTag(body)
  9. handleEndTag(html)
italic 의 항목은 암시되고 있습니다. 즉, 명시적으로는 지정되고 있지 않습니다만, 올바른 HTML 이기 위해서(때문에) 존재하고 있다고 하는 것입니다. 헤드는 필요 없습니다만, 생성됩니다. 암시되는 태그에 대해서는, AttributeSet 인수가 키 HTMLEditorKit.ParserCallback.IMPLIEDBoolean.TRUE 의 값을 가집니다.

HTML.Attributes 는 형태 보증된 HTML 속성의 열거를 정의합니다. 태그의 속성 키가 HTML.Attribute 으로 정의되는 경우는 HTML.Attribute 가 키로서 사용되어 그렇지 않은 경우는 String 가 사용됩니다. 예를 들어 <p foo=bar class=neat> 에는 2 개의 속성이 있습니다. foo 는 HTML.Attribute 에서는 정의되지 않고, 클래스는 HTML.Attribute 로 정의됩니다. 따라서 AttributeSet 는 2 개의 값을 가집니다. neat 라고 하는 String 치를 가지는 HTML.Attribute.CLASS 와 bar 라고 하는 String 치를 가지는 String 키 foo 입니다.

위치 인수는 태그, 코멘트, 또는 텍스트의 개시를 나타냅니다. 배열과 같게, 스트림의 최초의 문자는 0 이라고 하는 위치를 가지고 있습니다. 암시되는 태그의 경우, 위치는 다음에 검출되는 태그의 위치를 나타냅니다. 최초의 예에서는, 암시된 본체 개시 태그 및 HTML 태그는 p 태그와 같은 위치를 가져, 암시된 마지막 p 태그, HTML 태그 및 본체 태그는 모두 같은 위치를 가지고 있습니다.

HTML 는 공백을 스킵 하기 위한(해), 텍스트의 위치는 최초의 유효한 문자의 위치가 됩니다. 예를 들어 캐릭터 라인 \n\n\nblah 에서는, 텍스트 blah 는 3 이라고 하는 위치를 가져, 개행은 스킵 됩니다.

값을 가지지 않는 속성, 예를 들어 HTML 캐릭터 라인 <foo blah> 의 속성 blah 는 값을 가지지 않습니다만, 이러한 속성의 경우는, AttributeSet 의 값에 배치되는 값으로 해서 다음의 2 개가 생각됩니다.

스트림의 해석이 종료하면(자), 콜백은 줄 끝 캐릭터 라인일 가능성이 높은 캐릭터 라인의 통지를 받습니다. 줄 끝 캐릭터 라인은, 스트림의 해석중에 가장 많이 검출되는 \n, \r 또는 \r\n 의 어떤 것인가입니다.


필드의 개요
 
클래스 javax.swing.text.html.parser. Parser 로부터 상속된 필드
dtd , strict
 
인터페이스 javax.swing.text.html.parser. DTDConstants 로부터 상속된 필드
ANY , CDATA , CONREF , CURRENT , DEFAULT , EMPTY , ENDTAG , ENTITIES , ENTITY , FIXED , GENERAL , ID , IDREF , IDREFS , IMPLIED , MD , MODEL , MS , NAME , NAMES , NMTOKEN , NMTOKENS , NOTATION , NUMBER , NUMBERS , NUTOKEN , NUTOKENS , PARAMETER , PI , PUBLIC , RCDATA , REQUIRED , SDATA , STARTTAG , SYSTEM
 
생성자 의 개요
DocumentParser (DTD  dtd)
           
 
메소드의 개요
protected  void handleComment (char[] text)
          HTML 의 코멘트를 검출했을 때에 불려 갑니다.
protected  void handleEmptyTag (TagElement  tag)
          빈 상태(empty)의 태그를 처리합니다.
protected  void handleEndTag (TagElement  tag)
          종료 태그를 처리합니다.
protected  void handleError (int ln, String  errorMsg)
          에러가 발생한 것을 나타냅니다.
protected  void handleStartTag (TagElement  tag)
          개시 태그를 처리합니다.
protected  void handleText (char[] data)
          텍스트를 처리합니다.
 void parse (Reader  in, HTMLEditorKit.ParserCallback  callback, boolean ignoreCharSet)
           
 
클래스 javax.swing.text.html.parser. Parser 로부터 상속된 메소드
endTag , error , error , error , error , flushAttributes , getAttributes , getCurrentLine , getCurrentPos , handleEOFInComment , handleTitle , makeTag , makeTag , markFirstTime , parse , parseDTDMarkup , parseMarkupDeclarations , startTag
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

DocumentParser

public DocumentParser(DTD  dtd)
메소드의 상세

parse

public void parse(Reader  in,
                  HTMLEditorKit.ParserCallback  callback,
                  boolean ignoreCharSet)
           throws IOException 
예외:
IOException

handleStartTag

protected void handleStartTag(TagElement  tag)
개시 태그를 처리합니다.

오버라이드(override):
클래스 Parser 내의 handleStartTag

handleComment

protected void handleComment(char[] text)
클래스 Parser 의 기술:
HTML 의 코멘트를 검출했을 때에 불려 갑니다.

오버라이드(override):
클래스 Parser 내의 handleComment

handleEmptyTag

protected void handleEmptyTag(TagElement  tag)
                       throws ChangedCharSetException 
빈 상태(empty)의 태그를 처리합니다.

오버라이드(override):
클래스 Parser 내의 handleEmptyTag
예외:
ChangedCharSetException

handleEndTag

protected void handleEndTag(TagElement  tag)
종료 태그를 처리합니다.

오버라이드(override):
클래스 Parser 내의 handleEndTag

handleText

protected void handleText(char[] data)
텍스트를 처리합니다.

오버라이드(override):
클래스 Parser 내의 handleText

handleError

protected void handleError(int ln,
                           String  errorMsg)
클래스 Parser 의 기술:
에러가 발생한 것을 나타냅니다.

오버라이드(override):
클래스 Parser 내의 handleError

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 도 참조해 주세요.