LabVIEW數(shù)據(jù)記錄和存儲(chǔ)(四)—XML文件
在測(cè)試測(cè)量領(lǐng)域中,XML文件通常被用來傳遞應(yīng)用程序的配置文件和參數(shù),這與ini文件的作用類似,也有不少的程序員將二者進(jìn)行對(duì)比。這里舉個(gè)簡(jiǎn)單的說明實(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)簡(jiǎn)直就是一場(chǎng)“災(zāi)難”,因?yàn)樗鼉H僅是一種兩層的結(jié)構(gòu)體系,無法準(zhǔn)確地表述這種多種的樹形結(jié)構(gòu)。無論怎樣設(shè)計(jì)section和key,始終無法滿足條理清晰、結(jié)構(gòu)簡(jiǎn)單和檢索方便的要求。XML由于其本身的多層次設(shè)計(jì)特點(diǎn)卻完全能夠勝任此類描述,如下所示。
-
-
-
GPIB::1
-
GPIB::2
-
-
GPIB::3
-
GPIB::4
-
-
GPIB::5
-
-
GPIB::6
在瀏覽器中(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所示,依次為L(zhǎng)abVIEW 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所示為L(zhǎng)abVIEW Schema函數(shù)選板中的函數(shù)列表,其功能非常清晰明了。
評(píng)論