在LabVIEW中使用XML
1.什么是XML
XML是Extensible Markup Language的縮寫,即可擴展標(biāo)記語言,是一種可以用來創(chuàng)建自己的標(biāo)記的標(biāo)記語言。它由萬維網(wǎng)協(xié)會(W3C)創(chuàng)建,用來克服 HTML(即超文本標(biāo)記語言(Hypertext Markup Language),它是所有網(wǎng)頁的基礎(chǔ))的局限。XML 是基于 SGML ― 標(biāo)準(zhǔn)通用標(biāo)記語言(Standard Generalized Markup Language),也是既無標(biāo)簽集也無語法的新一代標(biāo)記語言。
2.XML的先進特性
XML繼承了SGML的許多特性,首先是可擴展性。XML允許使用者創(chuàng)建和使用他們自己的標(biāo)記而不是HTML的有限詞匯表。這一點至關(guān)重要,企業(yè)可以用XML為電子商務(wù)和供應(yīng)鏈集成等應(yīng)用定義自己的標(biāo)記語言,甚至特定行業(yè)一起來定義該領(lǐng)域的特殊標(biāo)記語言,作為該領(lǐng)域信息共享與數(shù)據(jù)交換的基礎(chǔ)。
其次是靈活性。XML提供了一種結(jié)構(gòu)化的數(shù)據(jù)表示方式,使得用戶界面分離于結(jié)構(gòu)化數(shù)據(jù)。所以,Web用戶所追求的許多先進功能在XML環(huán)境下更容易實現(xiàn)。
第三是自描述性。XML文檔通常包含一個文檔類型聲明,因而XML文檔是自描述的。不僅人能讀懂XML文檔,計算機也能處理。XML表示數(shù)據(jù)的方式真正做到了獨立于應(yīng)用系統(tǒng),并且數(shù)據(jù)能夠重用。XML文檔被看作是文檔的數(shù)據(jù)庫化和數(shù)據(jù)的文檔化。
除了上述先進特性以外,XML還具有簡明性。它只有SGML約20%的復(fù)雜性,但卻具有SGML功能的約80%。XML比完整的SGML簡單得多,易學(xué)、易用并且易實現(xiàn)。另外,XML也吸收了人們多年來在Web上使用HTML的經(jīng)驗。XML支持世界上幾乎所有的主要語言,并且不同語言的文本可以在同一文檔中混合使用,應(yīng)用XML的軟件能處理這些語言的任何組合。
3.一個簡單的XML的構(gòu)成(LabVIEW)
<?xml version='1.0' standalone='yes' ?>
上面是LabVIEW生成的一個簡單的XML文件內(nèi)容,它由兩部分組成:XML文件頭和XML數(shù)據(jù)。XML文件頭聲明該文檔是XML文檔,且引用一個處理指令向應(yīng)用程序提供該文檔遵循的XML的版本,處理指令在“<? ”和“?>”之間指定,“standalone”指定本文檔是否依賴于其他XML文檔。XML數(shù)據(jù)從
<數(shù)據(jù)類型>
<數(shù)據(jù)名> 數(shù)據(jù)名>
<值>
數(shù)據(jù)類型>
在標(biāo)記語言中,元素可嵌套。元素嵌套使得XML數(shù)據(jù)層次結(jié)構(gòu)清晰易于理解。在LabVIEW中通過“平化至XML” 可將LabVIEW中的數(shù)據(jù)轉(zhuǎn)化成上述格式的XML數(shù)據(jù),通過“還原至XML”將XML數(shù)據(jù)解析成LabVIEW中的數(shù)據(jù)。LabVIEW只能解析固定格式的XML文檔。
4.讀寫XML文件
下圖為將兩個路徑數(shù)據(jù)保存到名為demo的XML文檔中程序框圖,執(zhí)行程序后可用記事本或瀏覽器查看demoXML文檔的內(nèi)容(見4)。
從XML文檔中讀取數(shù)據(jù)5.XML的一個簡單應(yīng)用--用XML文檔保存用戶配置信息
保存用戶配置信息的文件通常有文本文件、配置設(shè)置文件、XML文件以及一些自定義文件,在LabVIEW選用XML文件保存用戶配置信息有以下兩個理由:
②