0

所以我有一个 ant 构建文件,它需要修改另一个名为 modify.properties 的文件。在这个属性文件中,我有这样一行 -

 CSDT_FLAG_CSELEMENT_FWUIDS=CSElement:4f826165-4744-4d78-63f0-4f437eb17872,b2db8c3d-ec81-4c6e-9425-ff0860f4511b,13f5a17a-8dac-443b-bcf8-b1675e660c53

在我的构建文件中,我将搜索术语 CSElement 并获取包含该术语的行

  <loadfile
    property="csdtFlagPropertiesFile"
        srcFile="../cms-distribution/src/main/x/csdtflags.properties">
            <filterchain>
                <filterreader classname="org.apache.tools.ant.filters.LineContainsRegExp">
                        <param type="regexp" value="CSElement"/>                                                                            
                </filterreader>
            </filterchain>
    </loadfile>

现在我有了 CSDT_FLAG_CSELEMENT_FWUIDS=CSElement:4f826165-4744-4d78-63f0-4f437eb17872,b2db8c3d-ec81-4c6e-9425-ff0860f4511b,13f5a17a-8dac-443b-bcf8-b1675e660regex5但是我无法将其写回文件中。诸如回显消息之类的消息将重写整个文件,但我只想用另一行替换该行。替换工作,但这会将它保存到一个属性中,我不知道如何在文件上重写它。非常感谢任何帮助。

4

1 回答 1

0

您可以使用ReplaceRegExp任务在文件中进行替换。

于 2013-01-14T17:53:56.583 回答