-
一個(gè)完整的XML文件查看全部
-
2.存儲(chǔ):樹形結(jié)構(gòu)查看全部
-
1.存儲(chǔ):樹形結(jié)構(gòu)
查看全部 -
創(chuàng)建SAXReader對象,調(diào)用read方法加載xml文件:
Document document=new SAXReader().read(new File(String pathName);
獲取根節(jié)點(diǎn):Element bookStore=document.getRootElement();
利用迭代器獲取根節(jié)點(diǎn)信息:Iterator it=bookStore.elementIterator();
Element book=(Element)it.next();
獲取book屬性名及屬性值:List<Attribute> bookAttrs=book.attributes();
獲取book結(jié)點(diǎn)子節(jié)點(diǎn):Iterator its=book.elementIterator();
Element bookChild=(Element)its.next();
查看全部 -
JDOM解析:
創(chuàng)建SAXBuilder對象:SAXBuilder saxBuilder=new SAXBuilder();
創(chuàng)建文件輸入流,加載xml文件:InputStreamReader isr=new InputStreamReader(new FileInputStream(String name));
加載輸入流到saxBuilder中:Document document=saxBuilder.build(isr);
獲取xml文件根節(jié)點(diǎn):Element rootElement=document.getRootElement();
獲取子節(jié)點(diǎn)List集合:List<Element> bookList=rootElement.getChildren();
遍歷bookList集合:
解析book屬性集合:List<Attribute> attrList=book.getAttributes();
遍歷attrList集合:
獲取屬性名:attr.getName();獲取屬性值:attr.getValue();
獲取子節(jié)點(diǎn):List<Element> bookChilds=book.getChildren();
遍歷bookChilds集合:
獲取屬性名:child.getName();獲取屬性值:child.getValue();
查看全部 -
使用SAX解析XML文件的節(jié)點(diǎn)名和節(jié)點(diǎn)間的文本:重寫characters(char[] ch,int srart,int length)獲取屬性值
String value=new String(ch,start,length);獲取屬性值合成的字符串
查看全部 -
SAX解析XML文件的結(jié)點(diǎn)屬性:
重寫startElement(String uri, String localName, String qName,Attributes attributes)方法,
獲取屬性名:attributes.getValue(index);
獲取屬性值:attributes.getValue(index);
查看全部 -
獲取一個(gè)SAXParserFactory的實(shí)例:SAXParserFactor factory=SAXParseFactory.newInstance();
通過factory獲取SAXParse實(shí)例:SAXParse parser=factory.newSAXParse();
創(chuàng)建一個(gè)類繼承DefaultHandler,重寫其中一些方法進(jìn)行業(yè)務(wù)處理并創(chuàng)建這個(gè)類的實(shí)例handler:重寫startElement方法和endElement方法
創(chuàng)建SAXParserHandler對象:SAXParserHandler handler=new SAXParserHandler();
parser.parse(String,DefaultHandler)
查看全部 -
DOM解析XML文件的節(jié)點(diǎn)名和結(jié)點(diǎn)值:
獲取book節(jié)點(diǎn)的子節(jié)點(diǎn):NodeList childNodes=book.getChildNodes();
獲取節(jié)點(diǎn)名:childNodes.item(k).getNodeName();
獲取結(jié)點(diǎn)值:childNodes.item(k).getFirstChild().getNodeValue();(該節(jié)點(diǎn)不包含子節(jié)點(diǎn))
childNodes.item(k).getTextContent();
查看全部 -
創(chuàng)建一個(gè)DocumentBuilderFactory的對象`:DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
創(chuàng)建一個(gè)DocumentBuilder的對象:DocumentBuilder db = dbf.newDocumentBuilder();
通過DocumentBuilder對象的parser方法加載xml文件到當(dāng)前項(xiàng)目下:Document document = db.parse(String);
獲取所有book節(jié)點(diǎn)的集合:NodeList bookList = document.getElementsByTagName(String tagname);
通過 item(i)方法 獲取一個(gè)book節(jié)點(diǎn),nodelist的索引值從0開始:
Node book = bookList.item(i);
獲取book節(jié)點(diǎn)的所有屬性集合:NamedNodeMap attrs = book.getAttributes();
通過item(index)方法獲取book節(jié)點(diǎn)的某一個(gè)屬性:
Node attr = attrs.item(j);
獲取屬性名:attr.getNodeName();
獲取屬性值:attr.getNodeValue();
查看全部 -
java程序解析xml文件內(nèi)容
四種解析方法:DOM SAX(官方提供) DOM4J JDOM
查看全部 -
DOM 整個(gè)加載到內(nèi)存中。
SAX 自己創(chuàng)建了handler處理類,逐個(gè)分析遇到的每個(gè)節(jié)點(diǎn)
查看全部 -
SAXReader 是DOM4J下的方法
查看全部 -
Dom 全部加載 sax遇到什么加載什么查看全部
-
聲明??查看全部
舉報(bào)