HY!
我必须将ANT中的两个字符串与<equals>
任务进行比较,但即使控制台显示正确的字符串,它也不适用于我的代码。这是代码:
<echo file="file.txt" append="true">AB${line.separator}</echo>
<echo file="file.txt" append="true">CD${line.separator}</echo>
<loadfile property="content" srcFile="file.txt">
<filterchain>
<filterreader classname="org.apache.tools.ant.filters.HeadFilter">
<param name="lines" value="1" />
</filterreader>
</filterchain>
</loadfile>
<echo>${content}</echo>
<if>
<equals arg1="${content}" arg2="AB" />
<then><echo message="OK"/></then>
<else><echo message="not OK"/></else>
</if>
构建的结果是:
11:24:23 [echo] AB
11:24:23 [echo] not OK
你能告诉我如何解决这个问题吗?和thnks:)
答案 0 :(得分:1)
我怀疑arg2
属性缺少行分隔符。试试这个:
<equals arg1="${content}" arg2="AB${line.separator}" />
或者,更好的是,尝试清除所有行分隔符的content
。