Ant + concat + fileset:是保留文件的字母顺序吗?

时间:2013-09-24 12:16:56

标签: java ant filenames concat

我有以下文件:

C:/test/files/1f.txt, contains the string "file1"
C:/test/files/2f.txt, contains the string "file2"
C:/test/files/3f.txt, contains the string "file3"

如果我使用以下Ant任务(Ant 1.6.5):

<concat destfile="C:/test/concat.txt">
    <fileset dir="C:/test/files">
        <include name="*.txt" />                      
    </fileset>
</concat>

concat.txt的内容总是file1file2file3,或者文件的字母顺序是否可能不会被保留,例如file2file1file3?那些在Windows,Linux和Solaris操作系统上?

我在Windows上尝试很少,似乎是的,订单被保留了,但我需要确定它。如果没有,你能提供一个反例,那里的字母顺序没有保留吗?

PS:在Ant 1.6.5中不允许在<sort>内嵌套<concat>,但仅限于Ant 1.7 +。

1 个答案:

答案 0 :(得分:0)

我不认为,你可以依赖订单。但我不能提供一个反例。

也许您可以使用<sort>元素强制指定订单:

http://ant.apache.org/manual/Types/resources.html#sort

应该是这样的:

<concat destfile="C:/test/concat.txt">
    <sort>
        <fileset dir="C:/test/files">
            <include name="*.txt" />                      
        </fileset>
        <name/>
    </sort>
</concat>