|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object org.xml.sax.helpers.DefaultHandler
public class DefaultHandler
SAX2 事件處理程序的預設基礎類別。
此模組(包括源程式碼和文檔)位於公共域中,對該模組不提供擔保。有關更多資訊,請參閱http://www.saxproject.org。
此類別可用作 SAX2 應用程序的有用基礎類別:它提供四個核心 SAX2 處理程序類別中的所有回調的預設實作:
應用程序編寫者可以在他們僅需實作部分介面時擴展此類別;當應用程序尚未提供其自己的處理程序時解析器編寫者可通過實例化此類別來提供預設的處理程序。
此類別替換不推薦使用的 SAX1 HandlerBase
類別。
EntityResolver
,
DTDHandler
,
ContentHandler
,
ErrorHandler
建構子摘要 | |
---|---|
DefaultHandler()
|
方法摘要 | |
---|---|
void |
characters(char[] ch,
int start,
int length)
接收元素中字元資料的通知。 |
void |
endDocument()
接收文檔結束的通知。 |
void |
endElement(String uri,
String localName,
String qName)
接收元素結束的通知。 |
void |
endPrefixMapping(String prefix)
接收名稱空間映射結束的通知。 |
void |
error(SAXParseException e)
接收可恢復的解析器錯誤的通知。 |
void |
fatalError(SAXParseException e)
報告嚴重的 XML 解析錯誤。 |
void |
ignorableWhitespace(char[] ch,
int start,
int length)
接收元素內容中可忽略空白的通知。 |
void |
notationDecl(String name,
String publicId,
String systemId)
接收註釋宣告的通知。 |
void |
processingInstruction(String target,
String data)
接收處理指令的通知。 |
InputSource |
resolveEntity(String publicId,
String systemId)
解析外部實體。 |
void |
setDocumentLocator(Locator locator)
接收文檔事件的 Locator 物件。 |
void |
skippedEntity(String name)
接收跳過的實體的通知。 |
void |
startDocument()
接收文檔開始的通知。 |
void |
startElement(String uri,
String localName,
String qName,
Attributes attributes)
接收元素開始的通知。 |
void |
startPrefixMapping(String prefix,
String uri)
接收名稱空間映射開始的通知。 |
void |
unparsedEntityDecl(String name,
String publicId,
String systemId,
String notationName)
接收未解析實體宣告的通知。 |
void |
warning(SAXParseException e)
接收解析器警告的通知。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
建構子詳細資訊 |
---|
public DefaultHandler()
方法詳細資訊 |
---|
public InputSource resolveEntity(String publicId, String systemId) throws IOException, SAXException
將始終返回 null,因此解析器將使用 XML 文檔中提供的系統標識符。此方法實作 SAX 預設的行為:應用程序編寫者可以在子類別中覆寫它以便進行諸如目錄尋找或 URI 重定向之類別的特定轉換。
EntityResolver
中的 resolveEntity
publicId
- 公共標識符,如果沒有可用的,則為 null。systemId
- 在 XML 文檔中提供的系統標識符。
IOException
- 如果在設置新的輸入源時發生錯誤。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。EntityResolver.resolveEntity(java.lang.String, java.lang.String)
public void notationDecl(String name, String publicId, String systemId) throws SAXException
預設情況下,不執行任何操作。如果應用程序編寫者希望追蹤在文檔中宣告的註釋,則可以在子類別中覆寫此方法。
DTDHandler
中的 notationDecl
name
- 註釋名稱。publicId
- 註釋公共標識符,如果沒有可使用的則為 null。systemId
- 註釋系統標識符。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便追蹤在文檔中宣告的未解析實體。
DTDHandler
中的 unparsedEntityDecl
name
- 實體名稱。publicId
- 實體公共標識符,如果不可用,則為 null。systemId
- 實體系統標識符。notationName
- 相關聯的註釋的名稱。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
public void setDocumentLocator(Locator locator)
預設情況下,不執行任何操作。如果應用程序編寫者希望存儲定位器以用於其他的文檔事件,則可以在子類別中覆寫此方法。
ContentHandler
中的 setDocumentLocator
locator
- 用於所有 SAX 文檔事件的定位器。ContentHandler.setDocumentLocator(org.xml.sax.Locator)
,
Locator
public void startDocument() throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便在文檔的開始採取特定的措施(如分派階層樹的根節點或創建輸出檔案)。
ContentHandler
中的 startDocument
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.startDocument()
public void endDocument() throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便在文檔的結束處採取特定的操作(如,結束階層樹或關閉輸出檔案)。
ContentHandler
中的 endDocument
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.endDocument()
public void startPrefixMapping(String prefix, String uri) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便在每個名稱空間前綴範圍的開始處採取特定的操作(如存儲前綴映射)。
ContentHandler
中的 startPrefixMapping
prefix
- 正在宣告的名稱空間前綴。uri
- 映射到前綴的名稱空間 URI。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)
public void endPrefixMapping(String prefix) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便在每個前綴映射的結束處採取特定的操作。
ContentHandler
中的 endPrefixMapping
prefix
- 正在宣告的名稱空間前綴。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.endPrefixMapping(java.lang.String)
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便在每個元素的開始處採取特定的操作(如,分派新的階層樹節點或將輸出寫入檔案)。
ContentHandler
中的 startElement
uri
- 名稱空間 URI,如果元素沒有任何名稱空間 URI,或者沒有正在執行名稱空間處理,則為空字元串。localName
- 本地名稱(不帶前綴),如果沒有正在執行名稱空間處理,則為空字元串。qName
- 限定的名稱(帶有前綴),如果限定的名稱不可用,則為空字元串。attributes
- 附加到元素的屬性。如果沒有屬性,則它將是空的 Attributes 物件。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
public void endElement(String uri, String localName, String qName) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便在每個元素的結束處採取特定的操作(如,結束階層樹節點或將輸出寫入檔案)。
ContentHandler
中的 endElement
uri
- 名稱空間 URI,如果元素沒有任何名稱空間 URI,或者沒有正在執行名稱空間處理,則為空字元串。localName
- 本地名稱(不帶前綴),如果沒有正在執行名稱空間處理,則為空字元串。qName
- 限定的名稱(帶有前綴),如果限定的名稱不可用,則為空字元串。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)
public void characters(char[] ch, int start, int length) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以覆寫此方法,以便對每塊字元資料採取特定的措施(如將該資料添加到節點或緩衝區,或者將該資料列印到檔案)。
ContentHandler
中的 characters
ch
- 字元。start
- 字元陣列中的開始位置。length
- 從字元陣列中使用的字元數。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.characters(char[], int, int)
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以覆寫此方法,以便對每塊可忽略的空白採取特定的措施(如將資料添加到節點或緩衝區,或者將資料列印到檔案)。
ContentHandler
中的 ignorableWhitespace
ch
- 空白字元。start
- 字元陣列中的開始位置。length
- 從字元陣列中使用的字元數。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.ignorableWhitespace(char[], int, int)
public void processingInstruction(String target, String data) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便對每個處理指令採取特定的措施,如設置狀態變數或調用其他的方法。
ContentHandler
中的 processingInstruction
target
- 處理指令目標。data
- 處理指令資料,如果未提供,則為 null。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.processingInstruction(java.lang.String, java.lang.String)
public void skippedEntity(String name) throws SAXException
預設情況下,不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便對每個處理指令採取特定的措施,如設置狀態變數或調用其他的方法。
ContentHandler
中的 skippedEntity
name
- 跳過的實體的名稱。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ContentHandler.processingInstruction(java.lang.String, java.lang.String)
public void warning(SAXParseException e) throws SAXException
預設實作不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便對每個警告採取特定的措施,如在日誌檔案中插入訊息,或者將它列印到終端機。
ErrorHandler
中的 warning
e
- 被編碼為異常的警告資訊。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ErrorHandler.warning(org.xml.sax.SAXParseException)
,
SAXParseException
public void error(SAXParseException e) throws SAXException
預設實作不執行任何操作。應用程序編寫者可以在子類別中覆寫此方法,以便對每個錯誤採取特定的措施,如在日誌檔案中插入訊息,或者將它列印到終端機。
ErrorHandler
中的 error
e
- 被編碼為異常的錯誤資訊。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ErrorHandler.warning(org.xml.sax.SAXParseException)
,
SAXParseException
public void fatalError(SAXParseException e) throws SAXException
預設的實作拋出 SAXParseException。如果應用程序編寫者需要對每個嚴重的錯誤採取特定的措施(如將所有的錯誤收集到一個報告中),則可以在子類別中覆寫此方法:當調用此方法時,無論哪種情況,應用程序都必須停止所有的常規處理,這是因為文檔已不再可靠,並且解析器再也不能報告解析事件。
ErrorHandler
中的 fatalError
e
- 被編碼為異常的錯誤資訊。
SAXException
- 任何 SAX 異常,可能包裹另外的異常。ErrorHandler.fatalError(org.xml.sax.SAXParseException)
,
SAXParseException
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。