多个ANT属性(从文件)到一个属性

时间:2011-06-24 17:47:55

标签: ant properties

我使用task为列表中的所有值运行目标,从一个属性中获取。

<foreach list="val1,val2" delimiter="," target="my.target" param="param_name"/>

现在,我想将这些值放在单独的属性文件中,因为它们很多。

所以问题是:如何从文件中读取多个(不知道有多少)属性(实际上是文件中的行)到一个属性中?

属性文件应如下所示:

val1
val2
anothervalue
foobar

输出应为:

"val1,val2,anothervalue,foobar"

加入一处房产。

1 个答案:

答案 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>