您可以使用簡單的遞歸方法和LightXML來瀏覽XML文檔。這裏有一個粗略的框架:
using LightXML
function xout(xelement, mode)
if mode == 1
println("<",name(xelement), ">")
else
println("\t{", name(xelement), "}\t", content(xelement))
end
end
function parse_node(c)
e = XMLElement(c)
if length(collect(child_elements(e))) > 0
xout(e, 1)
for child in child_elements(e)
parse_node(child)
end
else
xout(e, 0)
end
end
xdoc = parse_string(rawxml)
xroot = root(doc)
for c in child_elements(xroot)
parse_node(c)
end
它爲您的文件提供了這樣的事情:
<FinancialFunction>
{Abbreviation} ACOS
{CamelCaseName} Acos
{ShortDescription} Vector Trigonometric ACos
{GroupId} Math Transform
<RequiredInputArguments>
<RequiredInputArgument>
{Type} Double Array
{Name} inReal
<OutputArguments>
<OutputArgument>
{Type} Double Array
{Name} outReal
<Flags>
{Flag} Line
當然,好玩的纔剛剛開始!你必須區分不同元素的<Type>
和<Name>
標籤等。祝你好運!
您的代碼是否可用(或可否提供)? –
@ DavidP.Sanders當然,我正在清理它並將它放在Github上。我會稍微發佈鏈接。 – paulstey
@paulstey,這將是非常好的。 –