一、介紹:
再來要說到XML檔裡最重要的東西:元素(Element),下圖的test、value、id皆為元素,其中test又稱為根元素(rootElement)
元素的前一個元素稱為母元素(parentElement),下一個則稱為子元素(childElement),用dom4j來新增元素時使用addElement(String)的方法,如果要修改元素名子時使用setName(String),如果要新增字串或更改字串則可使用addText(String)或setText(String)
自己看看兩次輸出的差異吧
順帶一提,用.element(String)來搜尋子元素只會找第一個元素,如果需要其他同名的元素可以使用.elements(String)回傳List<Element>或用.elementIterator(String)回傳Iterator<Element>來管理其他的元素
當然也可以賦予屬性(Attribute^1)並使用XPath^2來搜索,之後再提屬性和XPath吧
二、方法
繼承自Branch
getQName() : QName^3
獲取QName
setQName(QName qname) : void
設定QName
getNamespace() : Namespace
獲取Namespace
getQName(String qualifiedName) : Qname
獲取QName
getNamespaceForPrefix(String prefix) : Namespace
用prefix獲取Namespace
getNamespaceForURI(String uri) : Namespace
用URI獲取Namespace
getNamespacesForURI(String uri) : List<Namespace>
用URI獲取全部的Namespace,回傳List
getNamespacePrefix() : String
用prefix獲取全部的Namespace,回傳List
getNamespaceURI() : String
獲取Namespace的URI
getNamespacePrefix() : String
獲取Namespace的prefix
getQualifiedName() : String
獲取完整的QualifiedName
additionalNamespaces() : List<Namespace>
待補
declaredNamespaces() : List<Namespace>
待補
addAttribute(String name, String value) : Element
增加一個屬性
addAttribute(QName qName, String value) : Element
增加一個屬性
addComment(String comment) : Element
增加一個註解
addCDATA(String cdata) : Element
增加一個CDATA(Character Data)
addEntity(String name, String text) : Element
增加一個Entity
addNamespace(String prefix, String uri) : Element
增加一個命名空間
addProcessingInstruction(String target, String text) : Element
增加處理指令
addProcessingInstruction(String target, Map<String, String> data) : Element
增加處理指令
addText(String text) : Element
增加字串
add(Attribute attribute) : void
增加屬性
add(CDATA cdata) : void
增加CDATA
add(Entity entity) : void
增加Entity
add(Text text) : void
增加文字
add(Namespace namespace) : void
增加命名空間
remove(Attribute attribute) : boolean
移除屬性
remove(CDATA cdata) : boolean
移除CDATA
remove(Entity entity) : boolean
移除Entity
remove(Namespace namespace) : boolean
移除命名空間
remove(Text text) : boolean
移除文字
getText() : String
獲取文字
getTextTrim() : String
待補
getStringValue() : String
獲取字串數值
getData() : Object
獲取資料
setData(Object data) : void
設定資料
attributes() : List<Attribute>
獲取全部屬性,回傳List
setAttributes(List<Attribute> attributes) : void
設定全部屬性
attributeCount() : int
獲取屬性量
attributeIterator() : Iterator<Attribute>
獲取屬性Iterator
attribute(int index) : Attribute
獲取第index個屬性
attribute(String name) : Attribute
獲取叫name的屬性
attribute(QName qName) : Attribute
獲取叫qName的屬性
attributeValue(String name) : String
獲取叫name的屬性的數值
attributeValue(String name, String defaultValue) : String
獲取叫name的屬性的數值,如果值不存在,則回傳defaultValue
attributeValue(QName qName) : String
獲取叫qName的屬性的數值
attributeValue(QName qName, String defaultValue) : String
獲取叫qName的屬性的數值,如果值不存在,則回傳defaultValue
setAttributeValue(String name, String value) : void
用addAttribute(String, String)替代
setAttributeValue(QName qName, String value) : void
用addAttribute(QName, String)替代
element(String name) : Element
獲取叫name的元素
element(QName qName) : Element
獲取回傳叫qName的元素
elements() : List<Element>
獲取全部元素,回傳List
elements(String name) : List<Element>
獲取全部叫做name的元素,回傳List
elements(QName qName) : List<Element>
獲取全部叫做qName的元素,回傳List
elementIterator() : Iterator<Element>
獲取元素Iterator
elementIterator(String name) : Iterator<Element>
獲取叫做name的元素Iterator
elementIterator(QName qName) : Iterator<Element>
獲取叫做qName的元素Iterator
isRootElement() : boolean
是否為根元素
hasMixedContent() : boolean
待補
isTextOnly() : boolean
是否只有文字
appendAttributes(Element element) : void
待補
createCopy() : Element
待補
createCopy(String name) : Element
待補
createCopy(QName qName) : Element
待補
elementText(String name) : String
獲取叫做name的元素的文字
elementText(QName qname) : String
獲取叫做qName的元素的文字
elementTextTrim(String name) : String
待補
getXPathResult(int index) : Node^4
獲取XPath的結果
三、內容連結:
^2 XPath - 待補
^3 QName - 待補