你知道什么是xml文件?要如何查看xml文件嗎?下面就跟小編來(lái)學(xué)習(xí)一下吧。
什么是xml文件 ?
xml提供了一套夸平臺(tái),跨網(wǎng)絡(luò)??绯绦虻恼Z(yǔ)言的描述方式。使用xml可以方便的實(shí)現(xiàn)數(shù)據(jù)交換。系統(tǒng)配置,內(nèi)容管理等。常見(jiàn)的功能。xml和html類似,都屬于標(biāo)記性語(yǔ)言 ?
可擴(kuò)展性:html不具擴(kuò)展性,xml、是無(wú)標(biāo)記語(yǔ)言,可定義新的標(biāo)記語(yǔ)言, ?
側(cè)重點(diǎn):html側(cè)重于如何顯示 xml側(cè)重于如何結(jié)構(gòu)化的描述信息 ?
語(yǔ)法要求:html不要求標(biāo)記的嵌套,配對(duì)等,不要求標(biāo)記之間具有硬頂?shù)捻樞?,xml要求嵌套,配對(duì),遵循統(tǒng)一的順序結(jié)構(gòu)要求 ?
可讀性和維護(hù)性,html難于閱讀,維護(hù);xml、結(jié)構(gòu)清晰,便于閱讀,維護(hù) ?
在應(yīng)用程序中,基于DOM(文檔對(duì)象模型)的xml分析器將一個(gè)xml文檔轉(zhuǎn)換成一個(gè)對(duì)象 模型的集合(DOM樹(shù)),應(yīng)用程序正式通過(guò)對(duì)這個(gè)對(duì)象模型的操作,來(lái)實(shí)現(xiàn)對(duì)xml文檔數(shù)據(jù)的操作,通過(guò)DOM接口,應(yīng)用程序可以在任意的時(shí)候訪問(wèn)xml文檔中的任一部分?jǐn)?shù)據(jù),因此,這種利用DOM接口的機(jī)制也被稱為隨機(jī)訪問(wèn)機(jī)制 ?
DOM分析器對(duì)內(nèi)存的需求比較高,而且對(duì)于結(jié)構(gòu)復(fù)雜的數(shù)的遍歷也是一項(xiàng)好事的操作,所以DOM、分析器對(duì)機(jī)器性能的要求比較高,而且對(duì)于結(jié)構(gòu)復(fù)雜的樹(shù)的遍歷也是一項(xiàng)耗時(shí)的操作,DOM分析器采用的樹(shù)結(jié)構(gòu)對(duì)的思想,與。xml文檔的結(jié)構(gòu)相吻合,同時(shí)鑒于隨機(jī)訪問(wèn)帶來(lái)的方便,因此DOM分析器還是有很廣泛的使用價(jià)值的 ?
如何查看XML文件 ?
打開(kāi)火狐、Chrome或Safari瀏覽器。 ?
打開(kāi)XML文件。 ?
點(diǎn)擊XML文件的URL地址或選中并拖拽XML文件到新打開(kāi)的瀏覽器窗口中。 ?
查看XML文件。 ?
XML標(biāo)簽是紫色的,XML內(nèi)容是正常的文本樣式。在Chrome和Safari瀏覽器中,點(diǎn)擊箭頭來(lái)折疊或展開(kāi)標(biāo)簽。在火狐瀏覽器中,點(diǎn)擊- 或 + 來(lái)折疊或展開(kāi)標(biāo)簽。 ?
保存XML文件。 ?
如果你在瀏覽器中查看XML文件,當(dāng)你想要保存它時(shí),點(diǎn)擊文件菜單,然后點(diǎn)擊保存。選擇你想要保存XML文件的路徑,然后點(diǎn)擊保存按鈕。 ?
php如何讀取xml文件 ?
假設(shè)myxml.xml文件中的內(nèi)容如下 ?
this is value ?
sound.ogg ?
首先我們讀取這個(gè)xml文件的內(nèi)容 ?
$xml = file_get_contents('myxml.xml'); ?
最重要的一步:解析這個(gè)xml文件 ?
$xml_obj = simplexml_load_string($xml); ?
好了,我們現(xiàn)在有了$xml_obj,我們就可以按照xml文件的結(jié)構(gòu)讀取數(shù)據(jù)了: ?
//輸出 "this is value" ?
echo $xml_obj->res; ?
//輸出 "sound.ogg" ?
echo $xml_obj->sound; ?
JDOM如何解析XML文件 ?
我們?cè)谑褂肑DOM之前需要導(dǎo)入jdom的jar包,因?yàn)轫?xiàng)目是通過(guò)maven構(gòu)建的,因此我們?cè)趐om文件中添加jar包的配置。 ?
首先使用Element定義了4個(gè)節(jié)點(diǎn)對(duì)象,在實(shí)例化Element對(duì)象時(shí)就直接指定元素的顯示名稱,由于在JDOM中依然要使用Document表示整個(gè)XML文檔,所以在建立Document對(duì)象時(shí)將根節(jié)點(diǎn)的Element對(duì)象保存在Document中。Attribute是屬性,id屬性保存在name元素中,使用setAttribute()方法進(jìn)行屬性節(jié)點(diǎn)的保存,并通過(guò)各個(gè)元素對(duì)象分別設(shè)置各個(gè)節(jié)點(diǎn)的父子關(guān)系。 ?
如果要進(jìn)行輸出則需要使用XMLOutputer類完成,在輸出時(shí)由于文件中包含了中文,所有使用setFormat()方法將中文的編碼設(shè)置成GBK,*程序使用文件輸出流完成XML文檔的輸出操作。 ?
代碼編輯完成后運(yùn)行程序,在設(shè)置的文件路徑下找到該文件,使用瀏覽器或文本編輯器打開(kāi)生成的xml文件,如下圖所示。 ?
在成功使用JDOM進(jìn)行了XML的寫操作,那么再利用JDOM讀的功能讀取生成的XML文件。JDOM使用SAX解析的方式操作,程序首先建立一個(gè)SAXBuilder,然后通過(guò)一個(gè)SAXBuilder取得一個(gè)Document對(duì)象,使用getRootElement()方法取得一個(gè)XML文件的根元素,然后再依次取出其中的子元素。 ?
運(yùn)行程序后,將控制臺(tái)輸出的結(jié)果和原文件對(duì)比可以看出能夠正常解析XML文件。 ?