我使用task为列表中的所有值运行目标,从一个属性中获取。
<foreach list="val1,val2" delimiter="," target="my.target" param="param_name"/>
现在,我想将这些值放在单独的属性文件中,因为它们很多。
所以问题是:如何从文件中读取多个(不知道有多少)属性(实际上是文件中的行)到一个属性中?
属性文件应如下所示:
val1
val2
anothervalue
foobar
输出应为:
"val1,val2,anothervalue,foobar"
加入一处房产。
答案 0 :(得分:2)
您可以使用LineTokenizer
过滤器loadfile
来实现此目的。例如:
<target name="t">
<loadfile property="data_range" srcFile="ls.txt">
<filterchain> <!-- this filter outputs lines delimited by "," -->
<tokenfilter delimoutput=","/>
</filterchain>
</loadfile>
<foreach list="${data_range}" param="line" delimiter="," target="print" />
</target>
<target name="print">
<echo>line [${line}]</echo> <!-- you can do anything here -->
</target>