這兩個java類的作用是什麼?
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.AttributesImpl;
import org.xml.sax.helpers.XMLFilterImpl;
/*
派生 XML 過濾器的基類。
此模組(包括原始碼和文件)位於公共域中,對該模組不提供擔保。
有關更多資訊,請參閱http://www.saxproject.org。。
此類設計為位於 XMLReader 和客戶端應用程式的事件處理程式之間。
預設情況下,除了將請求傳遞給閱讀器和將事件傳遞給未修改的處理程式外,
]不執行其他操作。
但是,子類可以重寫特定方法在它們傳遞時修改事件流或配置請求。
*/
class XMLFilterBase extends XMLFilterImpl
{
public XMLFilterBase()
{
}
public XMLFilterBase(XMLReader parent)
{
super(parent);
}
/*
startElement
void startElement(String uri,
String localName,
String qName,
Attributes atts)
throws SAXException接收元素開始的通知。
解析器在 XML 文件中的每個元素的開始呼叫此方法;對於每個 startElement 事件都將有相應的 endElement 事件(即使該元素為空時)。所有元素的內容都將在相應的 endElement 事件之前順序地報告。
此事件允許每個元素最多有以下三個名稱元件:
名稱空間 URI;
本地名稱;和
限定(字首)名。
可以提供它們中的部分或全部,具體如何取決於 http://xml.org/sax/features/namespaces 和 http://xml.org/sax/features/namespace-prefixes 屬性的值:
當名稱空間屬性為 true(預設)時,名稱空間 URI 和本地名稱是必需項,當名稱空間屬性為 false 時,則為可選項(如果指定一個值,兩個都必須指定);
當名稱空間字首屬性為 true 時,限定名是必需項,當名稱空間字首屬性為 false(預設值)時,則為可選項。
注意,所提供的屬性列表僅包括具有顯式值(指定的或預設的)的屬性:將忽略 IMPLIED 屬性。僅在 http://xml.org/sax/features/namespace-prefixes 屬性為 true (預設情況下為 false,並且對 true 值的支援是可選項)時屬性列表才包括用於名稱空間宣告(xmlns* 屬性)的屬性。
與 characters() 一樣,屬性值可以具有需要不止一個 char 值的字元。
引數:
uri - 名稱空間 URI,如果元素沒有名稱空間 URI,或者未執行名稱空間處理,則為空字串
localName - 本地名稱(不帶字首),如果未執行名稱空間處理,則為空字串
qName - 限定名(帶有字首),如果限定名不可用,則為空字串
atts - 連線到元素上的屬性。如果沒有屬性,則它將是空 Attributes 物件。在 startElement 返回後,此物件的值是未定義的
丟擲:
SAXException - 任何 SAX 異常,可能包裝另外的異常
另請參見:
endElement(java.lang.String, java.lang.String, java.lang.String), Attributes, AttributesImpl
*/
//接收元素開始的通知
public void startElement (String uri, String localName) throws SAXException
{
startElement(uri, localName, "", EMPTY_ATTS);
}
public void startElement (String localName) throws SAXException
{
startElement("", localName, "", EMPTY_ATTS);
}
//接收元素結束的通知
public void endElement (String uri, String localName) throws SAXException
{
endElement(uri, localName, "");
}
public void endElement (String localName) throws SAXException
{
endElement("", localName, "");
}
public void emptyElement (String uri, String localName, String qName,
Attributes atts) throws SAXException
{
startElement(uri, localName, qName, atts);
endElement(uri, localName, qName);
}
public void emptyElement (String uri, String localName) throws SAXException
{
emptyElement(uri, localName, "", EMPTY_ATTS);
}
public void emptyElement (String localName) throws SAXException
{
emptyElement("", localName, "", EMPTY_ATTS);
}
public void dataElement (String uri, String localName, String qName,
Attributes atts, String content) throws SAXException
{
startElement(uri, localName, qName, atts);
characters(content);
endElement(uri, localName, qName);
}
public void dataElement (String uri, String localName, String content)
throws SAXException
{
dataElement(uri, localName, "", EMPTY_ATTS, content);
}
public void dataElement (String localName, String content)
throws SAXException
{
dataElement("", localName, "", EMPTY_ATTS, content);
}
public void characters (String data) throws SAXException
{
char ch[] = data.toCharArray();
characters(ch, 0, ch.length);
}
//關於 XML 屬性列表的介面
protected static final Attributes EMPTY_ATTS = new AttributesImpl();
}
相關文章
- javascript兩個歎號!!的作用是什麼JavaScript
- javascript兩個!歎號一起使用的作用是什麼JavaScript
- auto-install-peers=true strict-peer-dependencies=false 這兩個配置的作用是什麼False
- that=this這樣的程式碼的作用是什麼
- 還理不清Java引用是什麼?看這篇文章就夠了Java
- python的引用是什麼Python
- 精益IT的作用是什麼?
- text/plain的作用是什麼AI
- MySql delimiter的作用是什麼MySqlMIT
- kubelet的功能、作用是什麼
- 什麼是CDN?CDN的原理和作用是什麼?
- 什麼是@Component,@Component的作用是什麼
- http代理IP的作用是什麼?HTTP
- jQuery.fn的作用是什麼jQuery
- css hack \9的作用是什麼CSS
- MySql中delimiter的作用是什麼?MySqlMIT
- setnx作用是什麼 redisRedis
- 一個故事教你看懂什麼是數字證書,它的原理是什麼?它的作用是什麼?
- 大資料的作用是幹什麼大資料
- __name__ == "__main__"的作用是什麼?AI
- __name__ == “__main__”的作用是什麼?AI
- 薪酬管理系統的作用是什麼?
- js中逗號(,)的作用是什麼JS
- javascript:void(0)的作用是什麼JavaScript
- 學Java需要什麼技巧呢?分享這4個Java
- python反向引用是什麼?Python
- jQuey return false作用是什麼False
- 你能從這兩個程式原始碼中發現什麼原始碼
- [提問交流]ucenter_member 和 member 這兩個表是做什麼的,有什麼區別?
- 什麼是智慧網路卡?智慧網路卡的作用是什麼?
- java輔助開發的兩個封裝類Java封裝
- web裡什麼是Math函式,作用是什麼Web函式
- Linux中gpgcheck是什麼意思?作用是什麼?LinuxGC
- 來聊聊,這個Java到底是什麼東西?Java
- AI開放平臺的作用是什麼?AI
- Proposer-Builder Separation (PBS) 的作用是什麼?UI
- dis ip int brief命令的作用是什麼?
- 檢視中with check option的作用是什麼?