Ant内置任务之propertyfile

一、概述

        propertyfile是Ant内置任务,用于编辑属性文件,通过此任务可以对应用程序服务器和应用程序的配置文件进行无人参与的修改。可以对已有文件添加或修改属性。ant1.8起,原始属性文件的注释和布局会被保留。ant1.8.2起,原始属性文件的换行样式也将被保留。

二、属性

        file:要编辑的属性文件的位置。
        comment:文件头。
        jdkproperties:ant1.8起,是否使用java.lang.Properties(会丢失文件的头信息和布局)。

        支持以下嵌套元素:
        entry:指定对属性文件的实际修改。具有以下属性:
                key:属性名。
                value:要设置的值(=)、要增加的值(+)、要减去的值(-)。
                default:如果属性没有在文件中定义,属性设定为初始值。对于日期类型,允许使用关键字now。如果operation不为del,value与default至少指定一个。
                type:数据类型,可选值为int、date或string,默认为string。
                operation:对于所有类型,可选值为:del(删除一个条目)、+(添加一个值到已有的值中)、=(设置一个值替换已有的值)。对于date和int类型:-(从已有的值中减去一个值),默认为=。
                pattern:对于int和date类型,如果设置此属性,将对值进行分析和格式化。
                unit:对于date类型的+/-操作,其值对应的单位,可选值为:millisecond、second、minute、hour、day、week、month、year,默认为day。

        对于=操作,规则如下:
        如果只指定了value,则无论值是否存在,都会设置为value。
        如果只指定了default,且属性已存在,则不做改变。
        如果只指定了default,且属性不存在,则设置为default。
        如果指定了value和default,且属性已存在,则设置为value。
        如果指定了value和default,且属性不存在,则设置为default。

三、简单示例

        执行前test.properties

key1=value1
key2=value2
num=10
        build.xml
<project>
	<propertyfile file="test.properties" comment="My properties file">
		<entry  key="key1" value="value1"/>
		<entry  key="date" type="date" value="now" pattern="dd HH:mm"/>
		<entry  key="key2" operation="del"/>
		<entry  key="num" type="int" value="2" operation="-"/>
	</propertyfile>
</project>
        执行后test.properties
#My properties file
#Sun, 08 Apr 2018 13:49:29 +0800
key1=value1
num=8

date=08 13\:49

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值