我想使用ANT版本或可能是javascript来执行此操作:
For each file in a directory,
read the filename.
insert the filename into an xml tag inside the same file.
例如,让我们说一个名为File_Name_One.txt
的文件,其内容包含<title>fileName-one</title>
。此内容将改为<title>File_Name_One</title>
。
它需要循环浏览所有文件,并使用当前正确的文件名替换<title>
标记中的内容,减去扩展名。
我可以处理替换<title>
标记中的内容所需的replaceregexp任务,但不知道如何读取和加载文件名,以及如何将其插入到它来自的文件中。我想也许pathconvert会成为如何做到的一部分,但我不知道如何做。
谢谢,
答案 0 :(得分:0)
您是要扫描目录搜索文件还是在 File_Name_One.txt 中提供文件名?
检查ant-contrib库。您可以使用PropertyRegex或Foreach这样的好任务......
如果要扫描目录中的文件,请尝试以下代码:
<property name="nl" value="${line.separator}"/>
<target name="test1">
<taskdef resource="net/sf/antcontrib/antcontrib.properties">
<classpath>
<pathelement location="lib/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
<foreach target="gogogo" param="theFile">
<fileset dir="${basedir}" casesensitive="yes">
<include name="**.*"/>
</fileset>
</foreach>
</target>
<target name="gogogo">
<echo message="${theFile}"/>
<concat append="true" destfile="out.txt"><title>${theFile}</title>${nl}</concat>
</target>
out.txt 的示例内容为:
<title>C:\workspace\.project</title>
<title>C:\workspace\TestANT.xml</title>
<title>C:\workspace\out3.txt</title>