取得 XML 元素你好,
我正在嘗試讀取結構類似於下面的程式碼片段的 XML 檔案。
<頂部元素>
<元素1>真
<元素2>真
<元素3>假
我知道如何透過呼叫元素名稱來使用 Parse XML,但在文件中我有數百個不同的元素名稱,我不想在程式碼中專門呼叫它們。我知道您可以使用 Text() 來取得每個屬性的屬性信息,如下所示
訊息=“”;
解析 XML(xml,
在元素上(“頂部元素”,
文字( 資訊= 資訊|| 修剪( XML Text() ) || " " )
)
);
資訊的結果是“True True False”,然後我可以將其解析為一個列表。但我真的不想使用這段程式碼,因為我無法輕鬆知道 False 實際值屬於什麼。是否可以取得 XML 檔案的所有元素,然後遞歸地呼叫這些元素上的 Parse XML 函數來取得其屬性資訊?
謝謝,
布蘭登
品質和工藝工程回覆:取得 XML 元素@Craige_Hales ,
哇哇! 我錯過了 JMP15 中的 xmlwizard。 不錯的功能。謝謝你的截圖。
回覆:取得 XML 元素感謝您及時的回覆。使用 XML 精靈我能夠讓它運作。
回覆:取得 XML 元素1) 嘗試 XML 精靈。 它有多種方法來猜測 XML 的結構,並有一個 GUI 來定制猜測。 除了測試猜測之外,您可能無法利用 GUI。
XML Wizard can be opened via File->Open or from JSL as shown.XML Wizard can be opened via File->Open or from JSL as shown.XML 精靈可以透過「檔案」->「開啟」或從 JSL 打開,如圖所示。
如果其中一種猜測有效,您只需指定所需的猜測選項。
dt=open(file,guess("wide"),xmlwizard(0));2)直接將檔案開啟到表中...下面的 open(file) 會產生這個,可能使用巨大的猜測。 需要 XML 擴充。
dt=open(file);
elementselements元素
3)或類似的東西
file=savetextfile("$temp/xxx.xml","<TOPELEMENT>
<ELEMENT1>True</ELEMENT1>
<ELEMENT2>True</ELEMENT2>
<ELEMENT3>False</ELEMENT3>
</TOPELEMENT>");
show(loadtextfile(file,xmlparse(1)));
// {TopElement(Element1("True"), Element2("True"), Element3("False"))};xmlparse 將 xml 結構轉換為 JSL 表達式樹。 請參閱XML 導入器插件一種從解析的表達式樹建立資料表的方法。 對加載項發表評論。
在大多數情況下,XML 精靈可能可以替代加載項。