????
| Current Path : /opt/ant/manual/api/org/apache/tools/ant/util/ |
| Current File : //opt/ant/manual/api/org/apache/tools/ant/util/FileUtils.html |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_03) on Tue May 22 06:24:55 CEST 2012 -->
<title>FileUtils (Apache Ant API)</title>
<meta name="date" content="2012-05-22">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="FileUtils (Apache Ant API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/tools/ant/util/FileTokenizer.html" title="class in org.apache.tools.ant.util"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/tools/ant/util/FirstMatchMapper.html" title="class in org.apache.tools.ant.util"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/tools/ant/util/FileUtils.html" target="_top">Frames</a></li>
<li><a href="FileUtils.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li>Nested | </li>
<li><a href="#field_summary">Field</a> | </li>
<li><a href="#constructor_summary">Constr</a> | </li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li><a href="#field_detail">Field</a> | </li>
<li><a href="#constructor_detail">Constr</a> | </li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.tools.ant.util</div>
<h2 title="Class FileUtils" class="title">Class FileUtils</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.tools.ant.util.FileUtils</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">FileUtils</span>
extends java.lang.Object</pre>
<div class="block">This class also encapsulates methods which allow Files to be
referred to using abstract path names which are translated to native
system file paths at runtime as well as copying files or setting
their last modification time.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#FAT_FILE_TIMESTAMP_GRANULARITY">FAT_FILE_TIMESTAMP_GRANULARITY</a></strong></code>
<div class="block">The granularity of timestamps under FAT.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#NTFS_FILE_TIMESTAMP_GRANULARITY">NTFS_FILE_TIMESTAMP_GRANULARITY</a></strong></code>
<div class="block">The granularity of timestamps under the NT File System.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#UNIX_FILE_TIMESTAMP_GRANULARITY">UNIX_FILE_TIMESTAMP_GRANULARITY</a></strong></code>
<div class="block">The granularity of timestamps under Unix.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#FileUtils()">FileUtils</a></strong>()</code>
<div class="block">Empty constructor.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#areSame(java.io.File, java.io.File)">areSame</a></strong>(java.io.File f1,
java.io.File f2)</code>
<div class="block">Are the two File instances pointing to the same object on the
file system?</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#close(java.nio.channels.Channel)">close</a></strong>(java.nio.channels.Channel device)</code>
<div class="block">Close a Channel without throwing any exception if something went wrong.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#close(java.io.InputStream)">close</a></strong>(java.io.InputStream device)</code>
<div class="block">Close a stream without throwing any exception if something went wrong.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#close(java.io.OutputStream)">close</a></strong>(java.io.OutputStream device)</code>
<div class="block">Close a stream without throwing any exception if something went wrong.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#close(java.io.Reader)">close</a></strong>(java.io.Reader device)</code>
<div class="block">Close a Reader without throwing any exception if something went wrong.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#close(java.net.URLConnection)">close</a></strong>(java.net.URLConnection conn)</code>
<div class="block">Closes an URLConnection if its concrete implementation provides
a way to close it that Ant knows of.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#close(java.io.Writer)">close</a></strong>(java.io.Writer device)</code>
<div class="block">Close a Writer without throwing any exception if something went wrong.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#contentEquals(java.io.File, java.io.File)">contentEquals</a></strong>(java.io.File f1,
java.io.File f2)</code>
<div class="block">Compares the contents of two files.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#contentEquals(java.io.File, java.io.File, boolean)">contentEquals</a></strong>(java.io.File f1,
java.io.File f2,
boolean textfile)</code>
<div class="block">Compares the contents of two files.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile)</code>
<div class="block">Convenience method to copy a file from a source to a destination.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters)</code>
<div class="block">Convenience method to copy a file from a source to a destination
specifying if token filtering must be used.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, boolean)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite)</code>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used and if
source files may overwrite newer destination files.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified)</code>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
source files may overwrite newer destination files and the
last modified time of <code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean, java.lang.String)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding)</code>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used, if source files may overwrite newer destination files, the last
modified time of <code>destFile</code> file should be made equal to the last modified time
of <code>sourceFile</code> and which character encoding to assume.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
boolean append,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)</code>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project, boolean)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
boolean append,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project,
boolean force)</code>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, org.apache.tools.ant.Project)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)</code>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project)">copyFile</a></strong>(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)</code>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.lang.String, java.lang.String)">copyFile</a></strong>(java.lang.String sourceFile,
java.lang.String destFile)</code>
<div class="block">Convenience method to copy a file from a source to a destination.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection)">copyFile</a></strong>(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters)</code>
<div class="block">Convenience method to copy a file from a source to a destination
specifying if token filtering must be used.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, boolean)">copyFile</a></strong>(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite)</code>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used and if source files may overwrite newer destination files.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean)">copyFile</a></strong>(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified)</code>
<div class="block">Convenience method to copy a file from a source to a destination
specifying if token
filtering must be used, if source files may overwrite newer destination
files and the last
modified time of <code>destFile</code> file should be made equal to
the last modified time
of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean, java.lang.String)">copyFile</a></strong>(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding)</code>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used, if source files may overwrite newer destination files and the last
modified time of <code>destFile</code> file should be made equal to the last modified time
of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, org.apache.tools.ant.Project)">copyFile</a></strong>(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)</code>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project)">copyFile</a></strong>(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)</code>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used, if filter chains must be used, if source files may overwrite newer
destination files and the last modified time of <code>destFile</code> file should be made
equal to the last modified time of <code>sourceFile</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#createNewFile(java.io.File)">createNewFile</a></strong>(java.io.File f)</code>
<div class="block">This was originally an emulation of File.createNewFile for JDK 1.1,
but it is now implemented using that method (Ant 1.6.3 onwards).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#createNewFile(java.io.File, boolean)">createNewFile</a></strong>(java.io.File f,
boolean mkdirs)</code>
<div class="block">Create a new file, optionally creating parent directories.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.io.File</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#createTempFile(java.lang.String, java.lang.String, java.io.File)">createTempFile</a></strong>(java.lang.String prefix,
java.lang.String suffix,
java.io.File parentDir)</code>
<div class="block"><strong>Deprecated.</strong>
<div class="block"><i>since ant 1.7.1 use createTempFile(String, String, File,
boolean, boolean) instead.</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.io.File</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#createTempFile(java.lang.String, java.lang.String, java.io.File, boolean)">createTempFile</a></strong>(java.lang.String prefix,
java.lang.String suffix,
java.io.File parentDir,
boolean deleteOnExit)</code>
<div class="block"><strong>Deprecated.</strong>
<div class="block"><i>since ant 1.7.1 use createTempFile(String, String, File,
boolean, boolean) instead.</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.io.File</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#createTempFile(java.lang.String, java.lang.String, java.io.File, boolean, boolean)">createTempFile</a></strong>(java.lang.String prefix,
java.lang.String suffix,
java.io.File parentDir,
boolean deleteOnExit,
boolean createFile)</code>
<div class="block">Create a temporary file in a given directory.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#delete(java.io.File)">delete</a></strong>(java.io.File file)</code>
<div class="block">Delete the file with <code>File.delete()</code> if the argument is not null.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#dissect(java.lang.String)">dissect</a></strong>(java.lang.String path)</code>
<div class="block">Dissect the specified absolute path.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#fileNameEquals(java.io.File, java.io.File)">fileNameEquals</a></strong>(java.io.File f1,
java.io.File f2)</code>
<div class="block">Compares two filenames.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#fromURI(java.lang.String)">fromURI</a></strong>(java.lang.String uri)</code>
<div class="block">Constructs a file path from a <code>file:</code> URI.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getDefaultEncoding()">getDefaultEncoding</a></strong>()</code>
<div class="block">Get the default encoding.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getFileTimestampGranularity()">getFileTimestampGranularity</a></strong>()</code>
<div class="block">Get the granularity of file timestamps.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.net.URL</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getFileURL(java.io.File)">getFileURL</a></strong>(java.io.File file)</code>
<div class="block">Get the URL for a file taking into account # characters.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/tools/ant/util/FileUtils.html" title="class in org.apache.tools.ant.util">FileUtils</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getFileUtils()">getFileUtils</a></strong>()</code>
<div class="block">Method to retrieve The FileUtils, which is shared by all users of this
method.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.io.File</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getParentFile(java.io.File)">getParentFile</a></strong>(java.io.File f)</code>
<div class="block"><strong>Deprecated.</strong>
<div class="block"><i>since 1.7. Just use <code>File.getParentFile()</code> directly.</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getPath(java.util.List)">getPath</a></strong>(java.util.List pathStack)</code>
<div class="block">Gets path from a <code>List</code> of <code>String</code>s.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getPath(java.util.List, char)">getPath</a></strong>(java.util.List pathStack,
char separatorChar)</code>
<div class="block">Gets path from a <code>List</code> of <code>String</code>s.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getPathStack(java.lang.String)">getPathStack</a></strong>(java.lang.String path)</code>
<div class="block">Gets all names of the path as an array of <code>String</code>s.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#getRelativePath(java.io.File, java.io.File)">getRelativePath</a></strong>(java.io.File fromFile,
java.io.File toFile)</code>
<div class="block">Calculates the relative path between two files.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#hasErrorInCase(java.io.File)">hasErrorInCase</a></strong>(java.io.File localFile)</code>
<div class="block">test whether a file or directory exists, with an error in the
upper/lower case spelling of the name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isAbsolutePath(java.lang.String)">isAbsolutePath</a></strong>(java.lang.String filename)</code>
<div class="block">Verifies that the specified filename represents an absolute path.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isContextRelativePath(java.lang.String)">isContextRelativePath</a></strong>(java.lang.String filename)</code>
<div class="block">On DOS and NetWare, the evaluation of certain file
specifications is context-dependent.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isLeadingPath(java.io.File, java.io.File)">isLeadingPath</a></strong>(java.io.File leading,
java.io.File path)</code>
<div class="block">Learn whether one path "leads" another.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isSymbolicLink(java.io.File, java.lang.String)">isSymbolicLink</a></strong>(java.io.File parent,
java.lang.String name)</code>
<div class="block"><strong>Deprecated.</strong>
<div class="block"><i>use SymbolicLinkUtils instead</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isUpToDate(java.io.File, java.io.File)">isUpToDate</a></strong>(java.io.File source,
java.io.File dest)</code>
<div class="block">Returns true if the source is older than the dest.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isUpToDate(java.io.File, java.io.File, long)">isUpToDate</a></strong>(java.io.File source,
java.io.File dest,
long granularity)</code>
<div class="block">Returns true if the source is older than the dest.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isUpToDate(long, long)">isUpToDate</a></strong>(long sourceTime,
long destTime)</code>
<div class="block">Compare two timestamps for being up to date using the
current granularity.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#isUpToDate(long, long, long)">isUpToDate</a></strong>(long sourceTime,
long destTime,
long granularity)</code>
<div class="block">Compare two timestamps for being up to date using
the specified granularity.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/tools/ant/util/FileUtils.html" title="class in org.apache.tools.ant.util">FileUtils</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#newFileUtils()">newFileUtils</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>
<div class="block"><i>since 1.7.
Use getFileUtils instead,
FileUtils do not have state.</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.io.File</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#normalize(java.lang.String)">normalize</a></strong>(java.lang.String path)</code>
<div class="block">"Normalize" the given absolute path.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#readFully(java.io.Reader)">readFully</a></strong>(java.io.Reader rdr)</code>
<div class="block">Read from reader till EOF.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#readFully(java.io.Reader, int)">readFully</a></strong>(java.io.Reader rdr,
int bufferSize)</code>
<div class="block">Read from reader till EOF.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#removeLeadingPath(java.io.File, java.io.File)">removeLeadingPath</a></strong>(java.io.File leading,
java.io.File path)</code>
<div class="block">Removes a leading path from a second path.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#rename(java.io.File, java.io.File)">rename</a></strong>(java.io.File from,
java.io.File to)</code>
<div class="block">Renames a file, even if that involves crossing file system boundaries.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.io.File</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#resolveFile(java.io.File, java.lang.String)">resolveFile</a></strong>(java.io.File file,
java.lang.String filename)</code>
<div class="block">Interpret the filename as a file relative to the given file
unless the filename already represents an absolute filename.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#safeReadFully(java.io.Reader)">safeReadFully</a></strong>(java.io.Reader reader)</code>
<div class="block">Safe read fully - do not return a null for an empty reader.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#setFileLastModified(java.io.File, long)">setFileLastModified</a></strong>(java.io.File file,
long time)</code>
<div class="block">Calls File.setLastModified(long time).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#toURI(java.lang.String)">toURI</a></strong>(java.lang.String path)</code>
<div class="block">Constructs a <code>file:</code> URI that represents the
external form of the given pathname.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#toVMSPath(java.io.File)">toVMSPath</a></strong>(java.io.File f)</code>
<div class="block">Returns a VMS String representation of a <code>File</code> object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#translatePath(java.lang.String)">translatePath</a></strong>(java.lang.String toProcess)</code>
<div class="block">Translate a path into its native (platform specific) format.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#tryHardToDelete(java.io.File)">tryHardToDelete</a></strong>(java.io.File f)</code>
<div class="block">Accommodate Windows bug encountered in both Sun and IBM JDKs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/tools/ant/util/FileUtils.html#tryHardToDelete(java.io.File, boolean)">tryHardToDelete</a></strong>(java.io.File f,
boolean runGC)</code>
<div class="block">If delete does not work, call System.gc() if asked to, wait a
little and try again.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="FAT_FILE_TIMESTAMP_GRANULARITY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FAT_FILE_TIMESTAMP_GRANULARITY</h4>
<pre>public static final long FAT_FILE_TIMESTAMP_GRANULARITY</pre>
<div class="block">The granularity of timestamps under FAT.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#org.apache.tools.ant.util.FileUtils.FAT_FILE_TIMESTAMP_GRANULARITY">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="UNIX_FILE_TIMESTAMP_GRANULARITY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>UNIX_FILE_TIMESTAMP_GRANULARITY</h4>
<pre>public static final long UNIX_FILE_TIMESTAMP_GRANULARITY</pre>
<div class="block">The granularity of timestamps under Unix.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#org.apache.tools.ant.util.FileUtils.UNIX_FILE_TIMESTAMP_GRANULARITY">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NTFS_FILE_TIMESTAMP_GRANULARITY">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>NTFS_FILE_TIMESTAMP_GRANULARITY</h4>
<pre>public static final long NTFS_FILE_TIMESTAMP_GRANULARITY</pre>
<div class="block">The granularity of timestamps under the NT File System.
NTFS has a granularity of 100 nanoseconds, which is less
than 1 millisecond, so we round this up to 1 millisecond.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../constant-values.html#org.apache.tools.ant.util.FileUtils.NTFS_FILE_TIMESTAMP_GRANULARITY">Constant Field Values</a></dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="FileUtils()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>FileUtils</h4>
<pre>protected FileUtils()</pre>
<div class="block">Empty constructor.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="newFileUtils()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newFileUtils</h4>
<pre>public static <a href="../../../../../org/apache/tools/ant/util/FileUtils.html" title="class in org.apache.tools.ant.util">FileUtils</a> newFileUtils()</pre>
<div class="block"><span class="strong">Deprecated.</span> <i>since 1.7.
Use getFileUtils instead,
FileUtils do not have state.</i></div>
<div class="block">Factory method.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>a new instance of FileUtils.</dd></dl>
</li>
</ul>
<a name="getFileUtils()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileUtils</h4>
<pre>public static <a href="../../../../../org/apache/tools/ant/util/FileUtils.html" title="class in org.apache.tools.ant.util">FileUtils</a> getFileUtils()</pre>
<div class="block">Method to retrieve The FileUtils, which is shared by all users of this
method.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>an instance of FileUtils.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6.3</dd></dl>
</li>
</ul>
<a name="getFileURL(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileURL</h4>
<pre>public java.net.URL getFileURL(java.io.File file)
throws java.net.MalformedURLException</pre>
<div class="block">Get the URL for a file taking into account # characters.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>file</code> - the file whose URL representation is required.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The FileURL value.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.net.MalformedURLException</code> - if the URL representation cannot be
formed.</dd></dl>
</li>
</ul>
<a name="copyFile(java.lang.String, java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.lang.String sourceFile,
java.lang.String destFile)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination.
No filtering is performed.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - Name of file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - Name of file to copy to.
Must not be <code>null</code>.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination
specifying if token filtering must be used.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - Name of file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - Name of file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used and if source files may overwrite newer destination files.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - Name of file to copy from. Must not be <code>null</code>.</dd><dd><code>destFile</code> - Name of file to copy to. Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be overwritten if it already
exists.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination
specifying if token
filtering must be used, if source files may overwrite newer destination
files and the last
modified time of <code>destFile</code> file should be made equal to
the last modified time
of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - Name of file to copy from. Must not be <code>null</code>.</dd><dd><code>destFile</code> - Name of file to copy to. Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of
the resulting file
should be set to that of the source file.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean, java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used, if source files may overwrite newer destination files and the last
modified time of <code>destFile</code> file should be made equal to the last modified time
of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - Name of file to copy from. Must not be <code>null</code>.</dd><dd><code>destFile</code> - Name of file to copy to. Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be overwritten if it already
exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of the resulting file
should be set to that of the source file.</dd><dd><code>encoding</code> - the encoding used to read and write the files.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5</dd></dl>
</li>
</ul>
<a name="copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, org.apache.tools.ant.Project)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - Name of file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - Name of file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>filterChains</code> - filterChains to apply during the copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of
the resulting file should be set to that
of the source file.</dd><dd><code>encoding</code> - the encoding used to read and write the files.</dd><dd><code>project</code> - the project instance.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5</dd></dl>
</li>
</ul>
<a name="copyFile(java.lang.String, java.lang.String, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.lang.String sourceFile,
java.lang.String destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used, if filter chains must be used, if source files may overwrite newer
destination files and the last modified time of <code>destFile</code> file should be made
equal to the last modified time of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - Name of file to copy from. Must not be <code>null</code>.</dd><dd><code>destFile</code> - Name of file to copy to. Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>filterChains</code> - filterChains to apply during the copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be overwritten if it already
exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of the resulting file
should be set to that of the source file.</dd><dd><code>inputEncoding</code> - the encoding used to read the files.</dd><dd><code>outputEncoding</code> - the encoding used to write the files.</dd><dd><code>project</code> - the project instance.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination. No filtering is performed.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from. Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to. Must not be <code>null</code>.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination
specifying if token filtering must be used.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used and if
source files may overwrite newer destination files.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
source files may overwrite newer destination files and the
last modified time of <code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of
the resulting file should be set to that
of the source file.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, boolean, boolean, java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a destination specifying if token
filtering must be used, if source files may overwrite newer destination files, the last
modified time of <code>destFile</code> file should be made equal to the last modified time
of <code>sourceFile</code> and which character encoding to assume.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from. Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to. Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be overwritten if it already
exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of the resulting file
should be set to that of the source file.</dd><dd><code>encoding</code> - the encoding used to read and write the files.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, org.apache.tools.ant.Project)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String encoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>filterChains</code> - filterChains to apply during the copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of
the resulting file should be set to that
of the source file.</dd><dd><code>encoding</code> - the encoding used to read and write the files.</dd><dd><code>project</code> - the project instance.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>filterChains</code> - filterChains to apply during the copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of
the resulting file should be set to that
of the source file.</dd><dd><code>inputEncoding</code> - the encoding used to read the files.</dd><dd><code>outputEncoding</code> - the encoding used to write the files.</dd><dd><code>project</code> - the project instance.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
boolean append,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>filterChains</code> - filterChains to apply during the copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of
the resulting file should be set to that
of the source file.</dd><dd><code>append</code> - whether to append to the destination file.</dd><dd><code>inputEncoding</code> - the encoding used to read the files.</dd><dd><code>outputEncoding</code> - the encoding used to write the files.</dd><dd><code>project</code> - the project instance.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.8</dd></dl>
</li>
</ul>
<a name="copyFile(java.io.File, java.io.File, org.apache.tools.ant.types.FilterSetCollection, java.util.Vector, boolean, boolean, boolean, java.lang.String, java.lang.String, org.apache.tools.ant.Project, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>public void copyFile(java.io.File sourceFile,
java.io.File destFile,
<a href="../../../../../org/apache/tools/ant/types/FilterSetCollection.html" title="class in org.apache.tools.ant.types">FilterSetCollection</a> filters,
java.util.Vector filterChains,
boolean overwrite,
boolean preserveLastModified,
boolean append,
java.lang.String inputEncoding,
java.lang.String outputEncoding,
<a href="../../../../../org/apache/tools/ant/Project.html" title="class in org.apache.tools.ant">Project</a> project,
boolean force)
throws java.io.IOException</pre>
<div class="block">Convenience method to copy a file from a source to a
destination specifying if token filtering must be used, if
filter chains must be used, if source files may overwrite
newer destination files and the last modified time of
<code>destFile</code> file should be made equal
to the last modified time of <code>sourceFile</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceFile</code> - the file to copy from.
Must not be <code>null</code>.</dd><dd><code>destFile</code> - the file to copy to.
Must not be <code>null</code>.</dd><dd><code>filters</code> - the collection of filters to apply to this copy.</dd><dd><code>filterChains</code> - filterChains to apply during the copy.</dd><dd><code>overwrite</code> - Whether or not the destination file should be
overwritten if it already exists.</dd><dd><code>preserveLastModified</code> - Whether or not the last modified time of
the resulting file should be set to that
of the source file.</dd><dd><code>append</code> - whether to append to the destination file.</dd><dd><code>inputEncoding</code> - the encoding used to read the files.</dd><dd><code>outputEncoding</code> - the encoding used to write the files.</dd><dd><code>project</code> - the project instance.</dd><dd><code>force</code> - whether to overwrite read-only destination files.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the copying fails.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.8.2</dd></dl>
</li>
</ul>
<a name="setFileLastModified(java.io.File, long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFileLastModified</h4>
<pre>public void setFileLastModified(java.io.File file,
long time)</pre>
<div class="block">Calls File.setLastModified(long time). Originally written to
to dynamically bind to that call on Java1.2+.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>file</code> - the file whose modified time is to be set</dd><dd><code>time</code> - the time to which the last modified time is to be set.
if this is -1, the current time is used.</dd></dl>
</li>
</ul>
<a name="resolveFile(java.io.File, java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resolveFile</h4>
<pre>public java.io.File resolveFile(java.io.File file,
java.lang.String filename)</pre>
<div class="block">Interpret the filename as a file relative to the given file
unless the filename already represents an absolute filename.
Differs from <code>new File(file, filename)</code> in that
the resulting File's path will always be a normalized,
absolute pathname. Also, if it is determined that
<code>filename</code> is context-relative, <code>file</code>
will be discarded and the reference will be resolved using
available context/state information about the filesystem.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>file</code> - the "reference" file for relative paths. This
instance must be an absolute file and must not contain
"./" or "../" sequences (same for \ instead
of /). If it is null, this call is equivalent to
<code>new java.io.File(filename).getAbsoluteFile()</code>.</dd><dd><code>filename</code> - a file name.</dd>
<dt><span class="strong">Returns:</span></dt><dd>an absolute file.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - if filename is null.</dd></dl>
</li>
</ul>
<a name="isContextRelativePath(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isContextRelativePath</h4>
<pre>public static boolean isContextRelativePath(java.lang.String filename)</pre>
<div class="block">On DOS and NetWare, the evaluation of certain file
specifications is context-dependent. These are filenames
beginning with a single separator (relative to current root directory)
and filenames with a drive specification and no intervening separator
(relative to current directory of the specified root).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>filename</code> - the filename to evaluate.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the filename is relative to system context.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - if filename is null.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7</dd></dl>
</li>
</ul>
<a name="isAbsolutePath(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAbsolutePath</h4>
<pre>public static boolean isAbsolutePath(java.lang.String filename)</pre>
<div class="block">Verifies that the specified filename represents an absolute path.
Differs from new java.io.File("filename").isAbsolute() in that a path
beginning with a double file separator--signifying a Windows UNC--must
at minimum match "\\a\b" to be considered an absolute path.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>filename</code> - the filename to be checked.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the filename represents an absolute path.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - if filename is null.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6.3</dd></dl>
</li>
</ul>
<a name="translatePath(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>translatePath</h4>
<pre>public static java.lang.String translatePath(java.lang.String toProcess)</pre>
<div class="block">Translate a path into its native (platform specific) format.
<p>
This method uses PathTokenizer to separate the input path
into its components. This handles DOS style paths in a relatively
sensible way. The file separators are then converted to their platform
specific versions.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>toProcess</code> - The path to be translated.
May be <code>null</code>.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the native version of the specified path or
an empty string if the path is <code>null</code> or empty.</dd><dt><span class="strong">Since:</span></dt>
<dd>ant 1.7</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../org/apache/tools/ant/PathTokenizer.html" title="class in org.apache.tools.ant"><code>PathTokenizer</code></a></dd></dl>
</li>
</ul>
<a name="normalize(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>normalize</h4>
<pre>public java.io.File normalize(java.lang.String path)</pre>
<div class="block">"Normalize" the given absolute path.
<p>This includes:
<ul>
<li>Uppercase the drive letter if there is one.</li>
<li>Remove redundant slashes after the drive spec.</li>
<li>Resolve all ./, .\, ../ and ..\ sequences.</li>
<li>DOS style paths that start with a drive letter will have
\ as the separator.</li>
</ul>
Unlike <code>File.getCanonicalPath()</code> this method
specifically does not resolve symbolic links.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>path</code> - the path to be normalized.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the normalized version of the path.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - if path is null.</dd></dl>
</li>
</ul>
<a name="dissect(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dissect</h4>
<pre>public java.lang.String[] dissect(java.lang.String path)</pre>
<div class="block">Dissect the specified absolute path.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>path</code> - the path to dissect.</dd>
<dt><span class="strong">Returns:</span></dt><dd>String[] {root, remaining path}.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - if path is null.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7</dd></dl>
</li>
</ul>
<a name="toVMSPath(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toVMSPath</h4>
<pre>public java.lang.String toVMSPath(java.io.File f)</pre>
<div class="block">Returns a VMS String representation of a <code>File</code> object.
This is useful since the JVM by default internally converts VMS paths
to Unix style.
The returned String is always an absolute path.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>f</code> - The <code>File</code> to get the VMS path for.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The absolute VMS path to <code>f</code>.</dd></dl>
</li>
</ul>
<a name="createTempFile(java.lang.String, java.lang.String, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createTempFile</h4>
<pre>public java.io.File createTempFile(java.lang.String prefix,
java.lang.String suffix,
java.io.File parentDir)</pre>
<div class="block"><span class="strong">Deprecated.</span> <i>since ant 1.7.1 use createTempFile(String, String, File,
boolean, boolean) instead.</i></div>
<div class="block">Create a File object for a temporary file in a given directory. Without
actually creating the file.
<p>
The file denoted by the returned abstract pathname did not exist before
this method was invoked, any subsequent invocation of this method will
yield a different file name.
</p>
<p>
The filename is prefixNNNNNsuffix where NNNN is a random number.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>prefix</code> - prefix before the random number.</dd><dd><code>suffix</code> - file extension; include the '.'.</dd><dd><code>parentDir</code> - Directory to create the temporary file in; java.io.tmpdir used
if not specified.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a File reference to the new, nonexistent temporary file.</dd></dl>
</li>
</ul>
<a name="createTempFile(java.lang.String, java.lang.String, java.io.File, boolean, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createTempFile</h4>
<pre>public java.io.File createTempFile(java.lang.String prefix,
java.lang.String suffix,
java.io.File parentDir,
boolean deleteOnExit,
boolean createFile)</pre>
<div class="block">Create a temporary file in a given directory.
<p>The file denoted by the returned abstract pathname did not
exist before this method was invoked, any subsequent invocation
of this method will yield a different file name.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>prefix</code> - prefix before the random number.</dd><dd><code>suffix</code> - file extension; include the '.'.</dd><dd><code>parentDir</code> - Directory to create the temporary file in;
java.io.tmpdir used if not specified.</dd><dd><code>deleteOnExit</code> - whether to set the tempfile for deletion on
normal VM exit.</dd><dd><code>createFile</code> - true if the file must actually be created. If false
chances exist that a file with the same name is created in the time
between invoking this method and the moment the file is actually created.
If possible set to true.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a File reference to the new temporary file.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7.1</dd></dl>
</li>
</ul>
<a name="createTempFile(java.lang.String, java.lang.String, java.io.File, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createTempFile</h4>
<pre>public java.io.File createTempFile(java.lang.String prefix,
java.lang.String suffix,
java.io.File parentDir,
boolean deleteOnExit)</pre>
<div class="block"><span class="strong">Deprecated.</span> <i>since ant 1.7.1 use createTempFile(String, String, File,
boolean, boolean) instead.</i></div>
<div class="block">Create a File object for a temporary file in a given directory. Without
actually creating the file.
<p>
The file denoted by the returned abstract pathname did not exist before
this method was invoked, any subsequent invocation of this method will
yield a different file name.
</p>
<p>
The filename is prefixNNNNNsuffix where NNNN is a random number.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>prefix</code> - prefix before the random number.</dd><dd><code>suffix</code> - file extension; include the '.'.</dd><dd><code>parentDir</code> - Directory to create the temporary file in; java.io.tmpdir used
if not specified.</dd><dd><code>deleteOnExit</code> - whether to set the tempfile for deletion on normal VM exit.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a File reference to the new, nonexistent temporary file.</dd></dl>
</li>
</ul>
<a name="contentEquals(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contentEquals</h4>
<pre>public boolean contentEquals(java.io.File f1,
java.io.File f2)
throws java.io.IOException</pre>
<div class="block">Compares the contents of two files.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>f1</code> - the file whose content is to be compared.</dd><dd><code>f2</code> - the other file whose content is to be compared.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the content of the files is the same.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the files cannot be read.</dd></dl>
</li>
</ul>
<a name="contentEquals(java.io.File, java.io.File, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>contentEquals</h4>
<pre>public boolean contentEquals(java.io.File f1,
java.io.File f2,
boolean textfile)
throws java.io.IOException</pre>
<div class="block">Compares the contents of two files.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>f1</code> - the file whose content is to be compared.</dd><dd><code>f2</code> - the other file whose content is to be compared.</dd><dd><code>textfile</code> - true if the file is to be treated as a text file and
differences in kind of line break are to be ignored.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the content of the files is the same.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the files cannot be read.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6.3</dd></dl>
</li>
</ul>
<a name="getParentFile(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getParentFile</h4>
<pre>public java.io.File getParentFile(java.io.File f)</pre>
<div class="block"><span class="strong">Deprecated.</span> <i>since 1.7. Just use <code>File.getParentFile()</code> directly.</i></div>
<div class="block">This was originally an emulation of <code>File.getParentFile()</code> for JDK 1.1, but it is now
implemented using that method (Ant 1.6.3 onwards).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>f</code> - the file whose parent is required.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the given file's parent, or null if the file does not have a parent.</dd><dt><span class="strong">Since:</span></dt>
<dd>1.10</dd></dl>
</li>
</ul>
<a name="readFully(java.io.Reader)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readFully</h4>
<pre>public static java.lang.String readFully(java.io.Reader rdr)
throws java.io.IOException</pre>
<div class="block">Read from reader till EOF.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rdr</code> - the reader from which to read.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the contents read out of the given reader.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the contents could not be read out from the
reader.</dd></dl>
</li>
</ul>
<a name="readFully(java.io.Reader, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readFully</h4>
<pre>public static java.lang.String readFully(java.io.Reader rdr,
int bufferSize)
throws java.io.IOException</pre>
<div class="block">Read from reader till EOF.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rdr</code> - the reader from which to read.</dd><dd><code>bufferSize</code> - the buffer size to use when reading.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the contents read out of the given reader.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the contents could not be read out from the
reader.</dd></dl>
</li>
</ul>
<a name="safeReadFully(java.io.Reader)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>safeReadFully</h4>
<pre>public static java.lang.String safeReadFully(java.io.Reader reader)
throws java.io.IOException</pre>
<div class="block">Safe read fully - do not return a null for an empty reader.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>reader</code> - the input to read from.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the string.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to read from reader.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7.1</dd></dl>
</li>
</ul>
<a name="createNewFile(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createNewFile</h4>
<pre>public boolean createNewFile(java.io.File f)
throws java.io.IOException</pre>
<div class="block">This was originally an emulation of File.createNewFile for JDK 1.1,
but it is now implemented using that method (Ant 1.6.3 onwards).
<p>This method has historically <strong>not</strong> guaranteed that the
operation was atomic. In its current implementation it is.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>f</code> - the file to be created.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the file did not exist already.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - on error.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5</dd></dl>
</li>
</ul>
<a name="createNewFile(java.io.File, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createNewFile</h4>
<pre>public boolean createNewFile(java.io.File f,
boolean mkdirs)
throws java.io.IOException</pre>
<div class="block">Create a new file, optionally creating parent directories.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>f</code> - the file to be created.</dd><dd><code>mkdirs</code> - <code>boolean</code> whether to create parent directories.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the file did not exist already.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - on error.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6.3</dd></dl>
</li>
</ul>
<a name="isSymbolicLink(java.io.File, java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSymbolicLink</h4>
<pre>public boolean isSymbolicLink(java.io.File parent,
java.lang.String name)
throws java.io.IOException</pre>
<div class="block"><span class="strong">Deprecated.</span> <i>use SymbolicLinkUtils instead</i></div>
<div class="block">Checks whether a given file is a symbolic link.
<p>It doesn't really test for symbolic links but whether the
canonical and absolute paths of the file are identical--this
may lead to false positives on some platforms.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>parent</code> - the parent directory of the file to test</dd><dd><code>name</code> - the name of the file to test.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the file is a symbolic link.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - on error.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5</dd></dl>
</li>
</ul>
<a name="removeLeadingPath(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeLeadingPath</h4>
<pre>public java.lang.String removeLeadingPath(java.io.File leading,
java.io.File path)</pre>
<div class="block">Removes a leading path from a second path.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>leading</code> - The leading path, must not be null, must be absolute.</dd><dd><code>path</code> - The path to remove from, must not be null, must be absolute.</dd>
<dt><span class="strong">Returns:</span></dt><dd>path's normalized absolute if it doesn't start with
leading; path's path with leading's path removed otherwise.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5</dd></dl>
</li>
</ul>
<a name="isLeadingPath(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLeadingPath</h4>
<pre>public boolean isLeadingPath(java.io.File leading,
java.io.File path)</pre>
<div class="block">Learn whether one path "leads" another.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>leading</code> - The leading path, must not be null, must be absolute.</dd><dd><code>path</code> - The path to remove from, must not be null, must be absolute.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if path starts with leading; false otherwise.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7</dd></dl>
</li>
</ul>
<a name="toURI(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toURI</h4>
<pre>public java.lang.String toURI(java.lang.String path)</pre>
<div class="block">Constructs a <code>file:</code> URI that represents the
external form of the given pathname.
<p>Will be an absolute URI if the given path is absolute.</p>
<p>This code encodes non ASCII characters too.</p>
<p>The coding of the output is the same as what File.toURI().toASCIIString() produces</p>
See <a href="http://www.w3.org/TR/xml11/#dt-sysid">dt-sysid</a>
which makes some mention of how
characters not supported by URI Reference syntax should be escaped.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>path</code> - the path in the local file system.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the URI version of the local path.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6</dd></dl>
</li>
</ul>
<a name="fromURI(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fromURI</h4>
<pre>public java.lang.String fromURI(java.lang.String uri)</pre>
<div class="block">Constructs a file path from a <code>file:</code> URI.
<p>Will be an absolute path if the given URI is absolute.</p>
<p>Swallows '%' that are not followed by two characters,
doesn't deal with non-ASCII characters.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>uri</code> - the URI designating a file in the local filesystem.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the local file system path for the file.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6</dd></dl>
</li>
</ul>
<a name="fileNameEquals(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fileNameEquals</h4>
<pre>public boolean fileNameEquals(java.io.File f1,
java.io.File f2)</pre>
<div class="block">Compares two filenames.
<p>Unlike java.io.File#equals this method will try to compare
the absolute paths and "normalize" the filenames
before comparing them.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>f1</code> - the file whose name is to be compared.</dd><dd><code>f2</code> - the other file whose name is to be compared.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the file are for the same file.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.5.3</dd></dl>
</li>
</ul>
<a name="areSame(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areSame</h4>
<pre>public boolean areSame(java.io.File f1,
java.io.File f2)
throws java.io.IOException</pre>
<div class="block">Are the two File instances pointing to the same object on the
file system?</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.8.2</dd></dl>
</li>
</ul>
<a name="rename(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rename</h4>
<pre>public void rename(java.io.File from,
java.io.File to)
throws java.io.IOException</pre>
<div class="block">Renames a file, even if that involves crossing file system boundaries.
<p>This will remove <code>to</code> (if it exists), ensure that
<code>to</code>'s parent directory exists and move
<code>from</code>, which involves deleting <code>from</code> as
well.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>from</code> - the file to move.</dd><dd><code>to</code> - the new file name.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if anything bad happens during this
process. Note that <code>to</code> may have been deleted
already when this happens.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6</dd></dl>
</li>
</ul>
<a name="getFileTimestampGranularity()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFileTimestampGranularity</h4>
<pre>public long getFileTimestampGranularity()</pre>
<div class="block">Get the granularity of file timestamps. The choice is made based on OS, which is
incorrect--it should really be by filesystem. We do not have an easy way to probe for file
systems, however, so this heuristic gives us a decent default.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the difference, in milliseconds, which two file timestamps must have in order for the
two files to be considered to have different timestamps.</dd></dl>
</li>
</ul>
<a name="hasErrorInCase(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasErrorInCase</h4>
<pre>public boolean hasErrorInCase(java.io.File localFile)</pre>
<div class="block">test whether a file or directory exists, with an error in the
upper/lower case spelling of the name.
Using this method is only interesting on case insensitive file systems
(Windows).<br/>
It will return true only if 3 conditions are met :
<br/>
<ul>
<li>operating system is case insensitive</li>
<li>file exists</li>
<li>actual name from directory reading is different from the
supplied argument</li>
</ul>
<br/>
the purpose is to identify files or directories on case-insensitive
filesystems whose case is not what is expected.<br/>
Possibly to rename them afterwards to the desired upper/lowercase
combination.
<br/></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>localFile</code> - file to test</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the file exists and the case of the actual file
is not the case of the parameter</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7.1</dd></dl>
</li>
</ul>
<a name="isUpToDate(java.io.File, java.io.File, long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUpToDate</h4>
<pre>public boolean isUpToDate(java.io.File source,
java.io.File dest,
long granularity)</pre>
<div class="block">Returns true if the source is older than the dest.
If the dest file does not exist, then the test returns false; it is
implicitly not up do date.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>source</code> - source file (should be the older).</dd><dd><code>dest</code> - dest file (should be the newer).</dd><dd><code>granularity</code> - an offset added to the source time.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the source is older than the dest after accounting
for granularity.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6.3</dd></dl>
</li>
</ul>
<a name="isUpToDate(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUpToDate</h4>
<pre>public boolean isUpToDate(java.io.File source,
java.io.File dest)</pre>
<div class="block">Returns true if the source is older than the dest.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>source</code> - source file (should be the older).</dd><dd><code>dest</code> - dest file (should be the newer).</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the source is older than the dest, taking the granularity into account.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.6.3</dd></dl>
</li>
</ul>
<a name="isUpToDate(long, long, long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUpToDate</h4>
<pre>public boolean isUpToDate(long sourceTime,
long destTime,
long granularity)</pre>
<div class="block">Compare two timestamps for being up to date using
the specified granularity.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceTime</code> - timestamp of source file.</dd><dd><code>destTime</code> - timestamp of dest file.</dd><dd><code>granularity</code> - os/filesys granularity.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the dest file is considered up to date.</dd></dl>
</li>
</ul>
<a name="isUpToDate(long, long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUpToDate</h4>
<pre>public boolean isUpToDate(long sourceTime,
long destTime)</pre>
<div class="block">Compare two timestamps for being up to date using the
current granularity.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sourceTime</code> - timestamp of source file.</dd><dd><code>destTime</code> - timestamp of dest file.</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the dest file is considered up to date.</dd></dl>
</li>
</ul>
<a name="close(java.io.Writer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public static void close(java.io.Writer device)</pre>
<div class="block">Close a Writer without throwing any exception if something went wrong.
Do not attempt to close it if the argument is null.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>device</code> - output writer, can be null.</dd></dl>
</li>
</ul>
<a name="close(java.io.Reader)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public static void close(java.io.Reader device)</pre>
<div class="block">Close a Reader without throwing any exception if something went wrong.
Do not attempt to close it if the argument is null.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>device</code> - Reader, can be null.</dd></dl>
</li>
</ul>
<a name="close(java.io.OutputStream)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public static void close(java.io.OutputStream device)</pre>
<div class="block">Close a stream without throwing any exception if something went wrong.
Do not attempt to close it if the argument is null.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>device</code> - stream, can be null.</dd></dl>
</li>
</ul>
<a name="close(java.io.InputStream)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public static void close(java.io.InputStream device)</pre>
<div class="block">Close a stream without throwing any exception if something went wrong.
Do not attempt to close it if the argument is null.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>device</code> - stream, can be null.</dd></dl>
</li>
</ul>
<a name="close(java.nio.channels.Channel)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public static void close(java.nio.channels.Channel device)</pre>
<div class="block">Close a Channel without throwing any exception if something went wrong.
Do not attempt to close it if the argument is null.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>device</code> - channel, can be null.</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.8.0</dd></dl>
</li>
</ul>
<a name="close(java.net.URLConnection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public static void close(java.net.URLConnection conn)</pre>
<div class="block">Closes an URLConnection if its concrete implementation provides
a way to close it that Ant knows of.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>conn</code> - connection, can be null</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.8.0</dd></dl>
</li>
</ul>
<a name="delete(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre>public static void delete(java.io.File file)</pre>
<div class="block">Delete the file with <code>File.delete()</code> if the argument is not null.
Do nothing on a null argument.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>file</code> - file to delete.</dd></dl>
</li>
</ul>
<a name="tryHardToDelete(java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tryHardToDelete</h4>
<pre>public boolean tryHardToDelete(java.io.File f)</pre>
<div class="block">Accommodate Windows bug encountered in both Sun and IBM JDKs.
Others possible. If the delete does not work, call System.gc(),
wait a little and try again.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>whether deletion was successful</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.8.0</dd></dl>
</li>
</ul>
<a name="tryHardToDelete(java.io.File, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tryHardToDelete</h4>
<pre>public boolean tryHardToDelete(java.io.File f,
boolean runGC)</pre>
<div class="block">If delete does not work, call System.gc() if asked to, wait a
little and try again.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>whether deletion was successful</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.8.3</dd></dl>
</li>
</ul>
<a name="getRelativePath(java.io.File, java.io.File)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRelativePath</h4>
<pre>public static java.lang.String getRelativePath(java.io.File fromFile,
java.io.File toFile)
throws java.lang.Exception</pre>
<div class="block">Calculates the relative path between two files.
<p>
Implementation note:<br/> This function may throw an IOException if an I/O error occurs
because its use of the canonical pathname may require filesystem queries.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fromFile</code> - the <code>File</code> to calculate the path from</dd><dd><code>toFile</code> - the <code>File</code> to calculate the path to</dd>
<dt><span class="strong">Returns:</span></dt><dd>the relative path between the files</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.Exception</code> - for undocumented reasons</dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7</dd>
<dt><span class="strong">See Also:</span></dt><dd><code>File.getCanonicalPath()</code></dd></dl>
</li>
</ul>
<a name="getPathStack(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPathStack</h4>
<pre>public static java.lang.String[] getPathStack(java.lang.String path)</pre>
<div class="block">Gets all names of the path as an array of <code>String</code>s.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>path</code> - to get names from</dd>
<dt><span class="strong">Returns:</span></dt><dd><code>String</code>s, never <code>null</code></dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7</dd></dl>
</li>
</ul>
<a name="getPath(java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPath</h4>
<pre>public static java.lang.String getPath(java.util.List pathStack)</pre>
<div class="block">Gets path from a <code>List</code> of <code>String</code>s.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>pathStack</code> - <code>List</code> of <code>String</code>s to be concatenated as a path.</dd>
<dt><span class="strong">Returns:</span></dt><dd><code>String</code>, never <code>null</code></dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7</dd></dl>
</li>
</ul>
<a name="getPath(java.util.List, char)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPath</h4>
<pre>public static java.lang.String getPath(java.util.List pathStack,
char separatorChar)</pre>
<div class="block">Gets path from a <code>List</code> of <code>String</code>s.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>pathStack</code> - <code>List</code> of <code>String</code>s to be concated as a path.</dd><dd><code>separatorChar</code> - <code>char</code> to be used as separator between names in path</dd>
<dt><span class="strong">Returns:</span></dt><dd><code>String</code>, never <code>null</code></dd><dt><span class="strong">Since:</span></dt>
<dd>Ant 1.7</dd></dl>
</li>
</ul>
<a name="getDefaultEncoding()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getDefaultEncoding</h4>
<pre>public java.lang.String getDefaultEncoding()</pre>
<div class="block">Get the default encoding.
This is done by opening an InputStreamReader on
a dummy InputStream and getting the encoding.
Could use System.getProperty("file.encoding"), but cannot
see where this is documented.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the default file encoding.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/tools/ant/util/FileTokenizer.html" title="class in org.apache.tools.ant.util"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/tools/ant/util/FirstMatchMapper.html" title="class in org.apache.tools.ant.util"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/tools/ant/util/FileUtils.html" target="_top">Frames</a></li>
<li><a href="FileUtils.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li>Nested | </li>
<li><a href="#field_summary">Field</a> | </li>
<li><a href="#constructor_summary">Constr</a> | </li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li><a href="#field_detail">Field</a> | </li>
<li><a href="#constructor_detail">Constr</a> | </li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>