|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object javax.swing.text.html.parser.Parser
public class Parser
DTD 駆動型の、単純な HTML パーサです。パーサは InputStream から HTML ファイルを読み取って、タグやデータを検出すると、各種のメソッド (サブクラスでオーバーライドされる) を呼び出します。
残念なことに、正しく実装されていない HTML パーサが数多く出回っています。その結果、書式の正しくない HTML ファイルも多数存在します。このパーサは、ほとんどの HTML ファイルの解析を試みます。すなわち、この実装は HTML を優先し、SGML の仕様とは異なっている場合もあります。
このパーサは、\r および \r\n を \n として扱います。開始タグの後、および終了タグの前の改行は、SGML や HTML の仕様に従って無視されます。
HTML 仕様では、空白文字がどのように連続するかについて明確に指定されていません。特に、次のようなシナリオについては議論されていません (ここでは空白文字を使用するべきだが、空白文字の表示に   を使用している)。
'「<b>blah <i> <strike> foo」は「<b>blah <i><strike>foo」と同じものとして扱われます。
同様に、「<p><a href="xx"> <em>Using</em></a></p>」は「<p><a href="xx"><em>Using</em></a></p>」と同じものとして扱われます。
strict
が false の場合、フローをブレークするタグ (TagElement.breaksFlows
) や末尾に空白が見つかると、空白以外の文字が見つかるまで、空白はすべて無視されます。これにより、一般的なブラウザに動作が近くなります。
DTD
,
TagElement
,
SimpleAttributeSet
フィールドの概要 | |
---|---|
protected DTD |
dtd
|
protected boolean |
strict
このフラグは、Parser が SGML との互換性を厳密に調べるかどうかを決定します。 |
インタフェース 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 |
コンストラクタの概要 | |
---|---|
Parser(DTD dtd)
|
メソッドの概要 | |
---|---|
protected void |
endTag(boolean omitted)
終了タグを処理します。 |
protected void |
error(String err)
|
protected void |
error(String err,
String arg1)
|
protected void |
error(String err,
String arg1,
String arg2)
|
protected void |
error(String err,
String arg1,
String arg2,
String arg3)
エラーハンドラを呼び出します。 |
protected void |
flushAttributes()
|
protected SimpleAttributeSet |
getAttributes()
|
protected int |
getCurrentLine()
|
protected int |
getCurrentPos()
|
protected void |
handleComment(char[] text)
HTML のコメントを検出したときに呼び出されます。 |
protected void |
handleEmptyTag(TagElement tag)
空のタグを検出したときに呼び出されます。 |
protected void |
handleEndTag(TagElement tag)
終了タグを検出したときに呼び出されます。 |
protected void |
handleEOFInComment()
|
protected void |
handleError(int ln,
String msg)
エラーが発生したことを示します。 |
protected void |
handleStartTag(TagElement tag)
開始タグを検出したときに呼び出されます。 |
protected void |
handleText(char[] text)
PCDATA を検出したときに呼び出されます。 |
protected void |
handleTitle(char[] text)
HTML の title タグを検出したときに呼び出されます。 |
protected TagElement |
makeTag(Element elem)
|
protected TagElement |
makeTag(Element elem,
boolean fictional)
TagElement を作成します。 |
protected void |
markFirstTime(Element elem)
ドキュメント内で最初に見つかったタグにマークを付けます。 |
void |
parse(Reader in)
DTD が指定されている場合に、HTML ストリームを解析します。 |
String |
parseDTDMarkup()
文書型定義 (DTD - Document Type Declaration) のマークアップ宣言を解析します。 |
protected boolean |
parseMarkupDeclarations(StringBuffer strBuff)
マークアップ宣言を解析します。 |
protected void |
startTag(TagElement tag)
開始タグを処理します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
protected DTD dtd
protected boolean strict
コンストラクタの詳細 |
---|
public Parser(DTD dtd)
メソッドの詳細 |
---|
protected int getCurrentLine()
protected TagElement makeTag(Element elem, boolean fictional)
protected TagElement makeTag(Element elem)
protected SimpleAttributeSet getAttributes()
protected void flushAttributes()
protected void handleText(char[] text)
protected void handleTitle(char[] text)
protected void handleComment(char[] text)
protected void handleEOFInComment()
protected void handleEmptyTag(TagElement tag) throws ChangedCharSetException
ChangedCharSetException
protected void handleStartTag(TagElement tag)
protected void handleEndTag(TagElement tag)
protected void handleError(int ln, String msg)
protected void error(String err, String arg1, String arg2, String arg3)
protected void error(String err, String arg1, String arg2)
protected void error(String err, String arg1)
protected void error(String err)
protected void startTag(TagElement tag) throws ChangedCharSetException
ChangedCharSetException
protected void endTag(boolean omitted)
protected void markFirstTime(Element elem)
public String parseDTDMarkup() throws IOException
IOException
protected boolean parseMarkupDeclarations(StringBuffer strBuff) throws IOException
IOException
public void parse(Reader in) throws IOException
IOException
protected int getCurrentPos()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。