1

我想将多种文件格式转换为一种文件格式。示例:D:\myrepo\rough 有 3 个文件 1.abc.sql 2.def.xml 3.ghi.dmp

我希望使用 glob 映射器将它们全部转换为 .txt。

<?xml version ="1.0"?>
<project name = "roughone" default="taget1">
    <target name= "target1">
      <move todir="D:\myrepo\rough">
      <fileset dir="D:\myrepo\rough">
      </fileset>
      <mapper type ="glob" from="*" to="*.txt"/>
      </move>
    </target>
</project>

这给出了 1.abc.sql.txt 2.def.xml.txt 3.ghi.dmp.txt 因为我只需要 abc.txt、def.txt 和 ghi.txt。

请让我知道如何解决这个问题(from= " . " 也无济于事)。

4

1 回答 1

0

将您的替换globmapper为以下内容<regexpmapper>

<regexpmapper from="^(.*)[.][^.]+$$" to="\1.txt"/>

上面的正则表达式捕获每个文件名在最后一个句点之前的部分。正则表达式还会丢弃文件之前的任何扩展名。

需要双“$$”,因为 Ant 会将单个“$”解释为属性引用的开头。

于 2015-09-22T15:33:00.007 回答