【发布时间】:2016-06-03 17:06:40
【问题描述】:
我找到了一个将XML转换为CSV的例子,在使用的例子中,这个结构
<!-- Demo input for ETL -->
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
</CATALOG>
在这个文件结构中,Scriptella 代码:
<script connection-id="out">Title;Artist;Country;Company;Price;Year</script>
<query connection-id="in">
<!--XPath which all CD elements in a catalog-->
/CATALOG/CD
<!--Outputs all matched elements-->
<script connection-id="out" if="rownum>1">$TITLE;$ARTIST;$COUNTRY;$COMPANY;$PRICE;$YEAR</script>
</script>
如何转换具有以下结构的 XML 文件
<CATALOG>
<CD title='Empire Burlesque' artist='Bob Dylan' country='USA'/>
.............
<CD title='Empire Burlesque' artist='Bob Dylan' country='USA'/>
</CATALOG>
如何获取 XML 中的属性值?
【问题讨论】:
-
看over here,答案建议您可以使用特殊的
nodevariable,如下所示:?{node.getString("./@title")}。我没有 Scriptella,所以我无法编写经过测试的答案,但欢迎您在弄清楚如何将其准确地集成到输出脚本中后发布您自己的快速答案。
标签: xml csv scriptella