我需要從文件中讀取數據並對其進行一些進一步的處理。如何使用Ant腳本遍歷文件內容?
其實我只需要壓縮那些被修改的文件。所以準備了tracksheet.txt
,其中包含源代碼中所有修改文件的列表。
從tracksheet.txt
文件中讀取每個文件,從svn中獲取並壓縮它。
我需要從文件中讀取數據並對其進行一些進一步的處理。如何使用Ant腳本遍歷文件內容?
其實我只需要壓縮那些被修改的文件。所以準備了tracksheet.txt
,其中包含源代碼中所有修改文件的列表。
從tracksheet.txt
文件中讀取每個文件,從svn中獲取並壓縮它。
您可以使用Ant的loadfile
任務加載文件的內容。例如,假設每個條目是一個單獨的線,就成了這個樣子:
<loadfile
property="changed.files"
srcFile="tracksheet.txt">
<filterchain>
<striplinebreaks/>
</filterchain>
</loadfile>
然後你可以通過在屬性中的所有值使用Ant-的Contrib的for
或foreach
任務循環。例如:
<for list="${changed.files}" param="changedFile">
<sequential>
<echo>TODO fetch the file @{changedFile} from SVN</echo>
<echo>TODO zip the file @{changedFile}</echo>
</sequential>
</for>
請注意,Ant-Contrib不是標準安裝的一部分。你需要一個單獨的罐子。安裝/使用說明是在網站上:http://ant-contrib.sourceforge.net
克里斯類似他的回答:
<loadfile property="changed.files" srcFile="tracksheet.txt"/>
<for list="${changed.files}" param="changedFile" delimiter="${line.separator}">
<sequential>
<echo>@{changedFile}</echo>
</sequential>
</for>
當時有用的我,但我還用 \t \t \t ** ** \t \t \t \t filterchain>作爲列表中的for,預計用逗號分隔。 –
2014-10-07 14:34:55