新聞中心

EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > LabVIEW數(shù)據(jù)記錄和存儲(chǔ)(四)—XML文件

LabVIEW數(shù)據(jù)記錄和存儲(chǔ)(四)—XML文件

作者: 時(shí)間:2017-01-09 來源:網(wǎng)絡(luò) 收藏
XML(eXtensible Markup Language)是一種目前廣泛使用的數(shù)據(jù)傳輸和存儲(chǔ)的格式,其本質(zhì)上是一種文本文件,可以使用任何一個(gè)文本編輯工具打開和修改。類似于HTML,XML被設(shè)計(jì)為具有自我描述性,也是使用標(biāo)簽定義文檔的結(jié)構(gòu)和含義。本文僅僅是介紹LabVIEW中對(duì)XML文件的操作方式和支持函數(shù),關(guān)于XML語言本身可以參見相關(guān)書籍和文檔,如W3school網(wǎng)站。
在測(cè)試測(cè)量領(lǐng)域中,XML文件通常被用來傳遞應(yīng)用程序的配置文件和參數(shù),這與ini文件的作用類似,也有不少的程序員將二者進(jìn)行對(duì)比。這里舉個(gè)簡單的說明實(shí)例,說明對(duì)于ini和XML如何處理保存圖 17所示的儀器配置列表。該文件主要存儲(chǔ)各種儀器的參數(shù)信息,如name(名稱)、address(地址)、description(描述)。但是文件對(duì)各種儀器進(jìn)行分類,根據(jù)儀器功能分為AC Source、DC Source等。


圖 17 儀器配置列表實(shí)例
對(duì)ini文件來說,表述圖 17所示的結(jié)構(gòu)簡直就是一場(chǎng)“災(zāi)難”,因?yàn)樗鼉H僅是一種兩層的結(jié)構(gòu)體系,無法準(zhǔn)確地表述這種多種的樹形結(jié)構(gòu)。無論怎樣設(shè)計(jì)section和key,始終無法滿足條理清晰、結(jié)構(gòu)簡單和檢索方便的要求。XML由于其本身的多層次設(shè)計(jì)特點(diǎn)卻完全能夠勝任此類描述,如下所示。
-
-
-
Instr1
GPIB::1
本儀器用于UUT1供電。

-
Instr2
GPIB::2
本儀器用于UUT2供電。


-
-
Instr3
GPIB::3
本儀器用于UUT3供電。

-
Instr4
GPIB::4
本儀器用于UUT4供電。


-
-
Instr5
GPIB::5
測(cè)量1-10#點(diǎn)電壓。


-
-
Instr6
GPIB::6
監(jiān)控11-12#電壓。


在瀏覽器中(IE、Firefox等)打開該XML文件,可以看到其樹形的結(jié)構(gòu),非常吻合圖 17所示的要求。當(dāng)需要擴(kuò)展儀器或類型時(shí),只要增加相應(yīng)的元素節(jié)點(diǎn)即可。因此,相對(duì)ini文件,XML文件在描述比較復(fù)雜的文檔結(jié)構(gòu)時(shí)具有非常明顯的優(yōu)勢(shì)。
LabVIEW提供了兩類處理XML文件的VIs,如圖 18所示,依次為LabVIEW Schema和XML Parser。前者是將LabVIEW中產(chǎn)生的相關(guān)數(shù)據(jù),如waveform、string、array、cluster等按照內(nèi)置的XML Schema(XSD)文件產(chǎn)生符合XML驗(yàn)證的XML字符串;后者是使用XML DOM對(duì)象訪問和解析XML文件。


圖 18 XML函數(shù)選板
圖 19所示為LabVIEW Schema函數(shù)選板中的函數(shù)列表,其功能非常清晰明了。

上一頁 1 2 下一頁

評(píng)論


技術(shù)專區(qū)

關(guān)閉