|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--org.apache.avalon.excalibur.io.FileUtil
This class provides basic facilities for manipulating files and file paths.
Methods exist to retrieve the components of a typical file path. For example
/www/hosted/mysite/index.html
, can be broken into:
/www/hosted/mysite/
-- retrievable through getPath(java.lang.String)
index.html
-- retrievable through removePath(java.lang.String)
/www/hosted/mysite/index
-- retrievable through removeExtension(java.lang.String)
html
-- retrievable through getExtension(java.lang.String)
concatenate two paths
, resolve a
path relative to a File
and normalize(java.lang.String)
a path.
There are methods to create a File from a URL
, copy a
File to a directory
,
copy a File to another File
,
copy a URL's contents to a File
,
as well as methods to delete
and clean
a directory.
メソッドの概要 | |
static java.lang.String |
catPath(java.lang.String lookupPath,
java.lang.String path)
Will concatenate 2 paths, dealing with ..
Eg.,/a/b/c + d = /a/b/d /a/b/c + ../d = /a/d Thieved from Tomcat sources... |
static void |
cleanDirectory(java.io.File directory)
Clean a directory without deleting it. |
static void |
cleanDirectory(java.lang.String directory)
Clean a directory without deleting it. |
static boolean |
contentEquals(java.io.File file1,
java.io.File file2)
Compare the contents of two files to determine if they are equal or not. |
static void |
copyFile(java.io.File source,
java.io.File destination)
Copy file from source to destination. |
static void |
copyFileToDirectory(java.io.File source,
java.io.File destinationDirectory)
Copy file from source to destination. |
static void |
copyFileToDirectory(java.lang.String source,
java.lang.String destinationDirectory)
Copy file from source to destination. |
static void |
copyURLToFile(java.net.URL source,
java.io.File destination)
Copies bytes from the URL source to a file destination .
|
static void |
deleteDirectory(java.io.File directory)
Recursively delete a directory. |
static void |
deleteDirectory(java.lang.String directory)
Recursively delete a directory. |
static void |
forceDelete(java.io.File file)
Delete a file. |
static void |
forceDelete(java.lang.String file)
Delete a file. |
static java.lang.String |
getExtension(java.lang.String filename)
Get extension from filename. ie foo.txt --> "txt" a\b\c.jpg --> "jpg" a\b\c --> "" |
static java.lang.String |
getPath(java.lang.String filepath)
Get path from filename. |
static java.lang.String |
getPath(java.lang.String filepath,
char fileSeparatorChar)
Get path from filename. ie. |
static java.lang.String |
normalize(java.lang.String path)
Normalize a path. |
static java.lang.String |
removeExtension(java.lang.String filename)
Remove extension from filename. ie foo.txt --> foo a\b\c.jpg --> a\b\c a\b\c --> a\b\c |
static java.lang.String |
removeExtention(java.lang.String filename)
推奨されていません。 Use removeExtension as removeExtention is mispelled |
static java.lang.String |
removePath(java.lang.String filepath)
Remove path from filename. |
static java.lang.String |
removePath(java.lang.String filepath,
char fileSeparatorChar)
Remove path from filename. ie. |
static java.io.File |
resolveFile(java.io.File baseFile,
java.lang.String filename)
Resolve a file filename to it's canonical form. |
static long |
sizeOfDirectory(java.io.File directory)
Recursively count size of a directory. |
static long |
sizeOfDirectory(java.lang.String directory)
Recursively count size of a directory. |
static java.io.File |
toFile(java.net.URL url)
Convert from a URL to a File . |
static java.net.URL[] |
toURLs(java.io.File[] files)
Convert the array of Files into a list of URLs. |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
メソッドの詳細 |
public static boolean contentEquals(java.io.File file1, java.io.File file2) throws java.io.IOException
file1
- the first filefile2
- the second filepublic static java.io.File toFile(java.net.URL url)
URL
to a File
.url
- File URL.File
object, or null
if the URL's protocol
is not file
public static java.net.URL[] toURLs(java.io.File[] files) throws java.io.IOException
files
- the array of filesjava.io.IOException
- if an error occurspublic static java.lang.String removeExtention(java.lang.String filename)
foo.txt --> foo a\b\c.jpg --> a\b\c a\b\c --> a\b\c
filename
- the filenamepublic static java.lang.String removeExtension(java.lang.String filename)
foo.txt --> foo a\b\c.jpg --> a\b\c a\b\c --> a\b\c
filename
- the filenamepublic static java.lang.String getExtension(java.lang.String filename)
foo.txt --> "txt" a\b\c.jpg --> "jpg" a\b\c --> ""
filename
- the filenamepublic static java.lang.String removePath(java.lang.String filepath)
basename
ie.
a/b/c.txt --> c.txt a.txt --> a.txt
filepath
- the filepathpublic static java.lang.String removePath(java.lang.String filepath, char fileSeparatorChar)
a/b/c.txt --> c.txt a.txt --> a.txt
filepath
- the filepathpublic static java.lang.String getPath(java.lang.String filepath)
dirname
.
ie.
a/b/c.txt --> a/b a.txt --> ""
filepath
- the filepathpublic static java.lang.String getPath(java.lang.String filepath, char fileSeparatorChar)
a/b/c.txt --> a/b a.txt --> ""
filepath
- the filepathpublic static void copyFileToDirectory(java.lang.String source, java.lang.String destinationDirectory) throws java.io.IOException
destinationDirectory
does not exist, it
(and any parent directories) will be created. If a file source
in
destinationDirectory
exists, it will be overwritten.source
- An existing File
to copy.destination
- A directory to copy source
into.FileNotFoundException
- if source
isn't a normal file.java.lang.IllegalArgumentException
- if destinationDirectory
isn't a directory.java.io.IOException
- if source
does not exist, the file in
destinationDirectory
cannot be written to, or an IO error occurs during copying.public static void copyFileToDirectory(java.io.File source, java.io.File destinationDirectory) throws java.io.IOException
destinationDirectory
does not exist, it
(and any parent directories) will be created. If a file source
in
destinationDirectory
exists, it will be overwritten.source
- An existing File
to copy.destination
- A directory to copy source
into.FileNotFoundException
- if source
isn't a normal file.java.lang.IllegalArgumentException
- if destinationDirectory
isn't a directory.java.io.IOException
- if source
does not exist, the file in
destinationDirectory
cannot be written to, or an IO error occurs during copying.public static void copyFile(java.io.File source, java.io.File destination) throws java.io.IOException
destination
will be
created if they don't already exist. destination
will be overwritten if it
already exists.source
- An existing non-directory File
to copy bytes from.destination
- A non-directory File
to write bytes to (possibly
overwriting).java.io.IOException
- if source
does not exist, destination
cannot be
written to, or an IO error occurs during copying.FileNotFoundException
- if destination
is a directory
(use copyFileToDirectory(java.lang.String, java.lang.String)
).public static void copyURLToFile(java.net.URL source, java.io.File destination) throws java.io.IOException
source
to a file destination
.
The directories up to destination
will be created if they don't already exist.
destination
will be overwritten if it already exists.source
- A URL
to copy bytes from.destination
- A non-directory File
to write bytes to (possibly
overwriting).java.io.IOException
- if
source
URL cannot be openeddestination
cannot be written topublic static java.lang.String normalize(java.lang.String path)
null
if the ..'s went past the
root.
Eg:
/foo// --> /foo/ /foo/./ --> /foo/ /foo/../bar --> /bar /foo/../bar/ --> /bar/ /foo/../bar/../baz --> /baz //foo//./bar --> /foo/bar /../ --> null
path
- the path to normalizenull
if too many ..'s.public static java.lang.String catPath(java.lang.String lookupPath, java.lang.String path)
..
Eg.,
/a/b/c
+ d
= /a/b/d
/a/b/c
+ ../d
= /a/d
public static java.io.File resolveFile(java.io.File baseFile, java.lang.String filename)
filename
to it's canonical form. If filename
is
relative (doesn't start with /
), it will be resolved relative to
baseFile
, otherwise it is treated as a normal root-relative path.baseFile
- Where to resolve filename
from, if filename
is
relative.filename
- Absolute or relative file path to resolve.File
of filename
.public static void forceDelete(java.lang.String file) throws java.io.IOException
public static void forceDelete(java.io.File file) throws java.io.IOException
public static void deleteDirectory(java.lang.String directory) throws java.io.IOException
public static void deleteDirectory(java.io.File directory) throws java.io.IOException
public static void cleanDirectory(java.lang.String directory) throws java.io.IOException
public static void cleanDirectory(java.io.File directory) throws java.io.IOException
public static long sizeOfDirectory(java.lang.String directory)
public static long sizeOfDirectory(java.io.File directory)
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |