第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

導(dǎo)入老師的課件,一個字沒改,運(yùn)行時出現(xiàn)各種異常,看不懂啊,求大神。

這是老師的代碼,是xml的DOM用法
package?com.imooc.domtest.test;

import?java.io.IOException;

import?javax.xml.parsers.DocumentBuilder;
import?javax.xml.parsers.DocumentBuilderFactory;
import?javax.xml.parsers.ParserConfigurationException;

import?org.w3c.dom.Document;
import?org.w3c.dom.Element;
import?org.w3c.dom.NamedNodeMap;
import?org.w3c.dom.Node;
import?org.w3c.dom.NodeList;
import?org.xml.sax.SAXException;

public?class?DOMTest?{

	public?static?void?main(String[]?args)?{
		//創(chuàng)建一個DocumentBuilderFactory的對象
		DocumentBuilderFactory?dbf?=?DocumentBuilderFactory.newInstance();
		//創(chuàng)建一個DocumentBuilder的對象
		try?{
			//創(chuàng)建DocumentBuilder對象
			DocumentBuilder?db?=?dbf.newDocumentBuilder();
			//通過DocumentBuilder對象的parser方法加載books.xml文件到當(dāng)前項(xiàng)目下
			Document?document?=?db.parse("books.xml");
			//獲取所有book節(jié)點(diǎn)的集合
			NodeList?bookList?=?document.getElementsByTagName("book");
			//通過nodelist的getLength()方法可以獲取bookList的長度
			System.out.println("一共有"?+?bookList.getLength()?+?"本書");
			//遍歷每一個book節(jié)點(diǎn)
			for?(int?i?=?0;?i?<?bookList.getLength();?i++)?{
				System.out.println("=================下面開始遍歷第"?+?(i?+?1)?+?"本書的內(nèi)容=================");
				//通過?item(i)方法?獲取一個book節(jié)點(diǎn),nodelist的索引值從0開始
				Node?book?=?bookList.item(i);
//				獲取book節(jié)點(diǎn)的所有屬性集合
				NamedNodeMap?attrs?=?book.getAttributes();
				System.out.println("第?"?+?(i?+?1)?+?"本書共有"?+?attrs.getLength()?+?"個屬性");
//				遍歷book的屬性
				for?(int?j?=?0;?j?<?attrs.getLength();?j++)?{
					//通過item(index)方法獲取book節(jié)點(diǎn)的某一個屬性
					Node?attr?=?attrs.item(j);
					//獲取屬性名
					System.out.print("屬性名:"?+?attr.getNodeName());
					//獲取屬性值
					System.out.println("--屬性值"?+?attr.getNodeValue());
				}
//				//前提:已經(jīng)知道book節(jié)點(diǎn)有且只能有1個id屬性
//				//將book節(jié)點(diǎn)進(jìn)行強(qiáng)制類型轉(zhuǎn)換,轉(zhuǎn)換成Element類型
//				Element?book?=?(Element)?bookList.item(i);
//				//通過getAttribute("id")方法獲取屬性值
//				String?attrValue?=?book.getAttribute("id");
//				System.out.println("id屬性的屬性值為"?+?attrValue);
				//解析book節(jié)點(diǎn)的子節(jié)點(diǎn)
				NodeList?childNodes?=?book.getChildNodes();
				//遍歷childNodes獲取每個節(jié)點(diǎn)的節(jié)點(diǎn)名和節(jié)點(diǎn)值
				System.out.println("第"?+?(i+1)?+?"本書共有"?+?
				childNodes.getLength()?+?"個子節(jié)點(diǎn)");
				for?(int?k?=?0;?k?<?childNodes.getLength();?k++)?{
					//區(qū)分出text類型的node以及element類型的node
					if?(childNodes.item(k).getNodeType()?==?Node.ELEMENT_NODE)?{
						//獲取了element類型節(jié)點(diǎn)的節(jié)點(diǎn)名
						System.out.print("第"?+?(k?+?1)?+?"個節(jié)點(diǎn)的節(jié)點(diǎn)名:"?
						+?childNodes.item(k).getNodeName());
//						獲取了element類型節(jié)點(diǎn)的節(jié)點(diǎn)值
						System.out.println("--節(jié)點(diǎn)值是:"?+?childNodes.item(k).getFirstChild().getNodeValue());
//						System.out.println("--節(jié)點(diǎn)值是:"?+?childNodes.item(k).getTextContent());
					}
				}
				System.out.println("======================結(jié)束遍歷第"?+?(i?+?1)?+?"本書的內(nèi)容=================");
			}
		}?catch?(ParserConfigurationException?e)?{
			e.printStackTrace();
		}??catch?(SAXException?e)?{
			e.printStackTrace();
		}?catch?(IOException?e)?{
			e.printStackTrace();
		}
		
	}
}
解析的文件內(nèi)容是<?xml?version="1.0"?encoding="UTF-8"?>
<bookstore>
???????<book?id="1">
????????????????<name>冰與火之歌</name>
		<author>喬治馬丁</author>
		<year>2014</year>
		<price>89</price>
???????</book>

???<book?id="2">
???<name>安徒生童話</name>
		<year>2004</year>
		<price>77</price>
		<language>English</language>


</book>
</bookstore>

報(bào)錯信息:

com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 字節(jié)的 UTF-8 序列的字節(jié) 1 無效。

at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:701)

at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:567)

at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1793)

at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.peekChar(XMLEntityScanner.java:503)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2719)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)

at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)

at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)

at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)

at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:243)

at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:339)

at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:177)

at com.imooc.domtest.test.DOMTest.main(DOMTest.java:26)


正在回答

1 回答

我大概知道了,下載老師的課件,我的電腦自動把xml文件保存為ANSI編碼的了,改回utf-8就能用了

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

導(dǎo)入老師的課件,一個字沒改,運(yùn)行時出現(xiàn)各種異常,看不懂啊,求大神。

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號