0

给定的是一个包含以下内容的 xml 文件

<ROOT>
  <Group Name="Database"> 
     <User Name="Thorsten"/>
     <User Name="Karl"/>
     <User Name="Beate"/>
     <User Name="Heinz"/>
     <User Name="Andreas"/>
  </Group>
</ROOT>

现在我可以用像这样的 groovy 脚本来阅读它

def out = "";
def result = new XmlSlurper().parse(new File("D:\\User.xml"));
result.Group.User.each {
out += it.@Name.text()+ '\n';
}
println out;

输出按照它们在 XML 文件中出现的顺序排列

Thorsten
Karl
Beate
Heinz
Andreas

是否可以在迭代期间按字母顺序对结果集进行排序?

乔治

4

1 回答 1

2

迭代期间?当然不是。

但如果你使用XmlParser,你可以这样做:

def doc = new XmlParser().parse(new File("users.xml"));
foo = doc.Group.User.sort { it.@Name }.collect { it.@Name }.join("\n")
println foo

哪个输出:

Andreas
Beate
Heinz
Karl
Thorsten
于 2012-06-06T09:55:52.973 回答