|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectdk.netarkivet.common.utils.FileUtils
public class FileUtils
Misc. handy file utilities
Nested Class Summary | |
---|---|
static class |
FileUtils.FilenameParser
A class for parsing an ARC filename as generated by our runs of Heritrix and retrieveing components like harvestID and jobID. |
Field Summary | |
---|---|
static java.lang.String |
ARC_EXTENSION
Extension used for ARC files, including separator . |
static java.lang.String |
ARC_GZIPPED_EXTENSION
Extension used for ARC files, including separator . |
static java.lang.String |
ARC_PATTERN
Pattern matching ARC files, including separator. |
static java.io.FilenameFilter |
ARCS_FILTER
A filter that matches arc files, that is any file that ends on .arc or .arc.gz in any case. |
static java.lang.String |
CDX_EXTENSION
Extension used for CDX files, including separator . |
static java.io.FilenameFilter |
CDX_FILE_FILTER
A FilenameFilter accepting a file if and only if its name (transformed to lower case) ends on ".cdx". |
static org.apache.commons.logging.Log |
log
|
static java.lang.String |
OPEN_ARC_PATTERN
Pattern matching open ARC files, including separator . |
static java.io.FilenameFilter |
OPEN_ARCS_FILTER
A filter that matches files left open by a crashed Heritrix process. |
Constructor Summary | |
---|---|
FileUtils()
|
Method Summary | |
---|---|
static void |
appendToFile(java.io.File file,
java.lang.String... lines)
Append the given lines to a file. |
static void |
copyDirectory(java.io.File from,
java.io.File to)
Copy an entire directory from one location to another. |
static void |
copyFile(java.io.File from,
java.io.File to)
Copy file from one location to another. |
static long |
countLines(java.io.File file)
Count the number of lines in a file. |
static boolean |
createDir(java.io.File dir)
Check if the directory exists and is writable and create it if needed. |
static java.io.File |
createUniqueTempDir(java.io.File inDir,
java.lang.String prefix)
Creates a new temporary directory with a unique name. |
static java.lang.String |
formatFilename(java.lang.String filename)
Returns a valid filename for most filesystems. |
static long |
getBytesFree(java.io.File f)
Returns the number of bytes free on the file system that the given file resides on. |
static java.io.InputStream |
getEphemeralInputStream(java.io.File file)
Create an InputStream that reads from a file but removes the file when all data has been read. |
static java.util.List |
getFilesRecursively(java.lang.String dir,
java.util.List<java.io.File> files,
java.lang.String type)
Retrieves all files whose names ends with 'type' from directory 'dir' and all its subdirectories. |
static java.io.File |
getTempDir()
Get the location of the standard temporary directory. |
static java.io.FilenameFilter |
getXmlFilesFilter()
Return a filter that only accepts XML files (ending with .xml). |
static void |
makeSortedFile(java.io.File unsortedFile,
java.io.File sortedOutput)
Sort a file into another. |
static java.io.File |
makeValidFileFromExisting(java.lang.String filename)
Makes a valid file from filename passed in String. |
static byte[] |
readBinaryFile(java.io.File file)
Read an entire file, byte by byte, into a byte array, ignoring any locale issues. |
static java.lang.String |
readFile(java.io.File filename)
Load file content into text string. |
static java.lang.String |
readLastLine(java.io.File file)
Read the last line in a file. |
static java.util.List<java.lang.String> |
readListFromFile(java.io.File file)
Read a all lines from a file into a list of strings. |
static java.lang.String |
relativeTo(java.io.File theFile,
java.io.File crawlDir)
|
static boolean |
remove(java.io.File f)
Remove a file . |
static void |
removeLineFromFile(java.lang.String line,
java.io.File file)
Remove a line from a given file. |
static boolean |
removeRecursively(java.io.File f)
Remove a file and any subfiles in case of directories. |
static void |
writeBinaryFile(java.io.File file,
byte[] b)
Write an entire byte array to a file, ignoring any locale issues. |
static void |
writeCollectionToFile(java.io.File file,
java.util.Collection<java.lang.String> collection)
Writes a collection of strings to a file, each string on one line. |
static void |
writeFileToStream(java.io.File f,
java.io.OutputStream out)
Write the entire contents of a file to a stream. |
static void |
writeStreamToFile(java.io.InputStream in,
java.io.File f)
Write the contents of a stream into a file. |
static void |
writeXmlToFile(org.dom4j.Document doc,
java.io.File f)
Write document tree to file. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String CDX_EXTENSION
public static final java.lang.String ARC_EXTENSION
public static final java.lang.String ARC_GZIPPED_EXTENSION
public static final java.lang.String ARC_PATTERN
public static final java.lang.String OPEN_ARC_PATTERN
public static final org.apache.commons.logging.Log log
public static final java.io.FilenameFilter CDX_FILE_FILTER
public static final java.io.FilenameFilter OPEN_ARCS_FILTER
public static final java.io.FilenameFilter ARCS_FILTER
Constructor Detail |
---|
public FileUtils()
Method Detail |
---|
public static final boolean removeRecursively(java.io.File f)
f
- A file to completely and utterly remove.
java.lang.SecurityException
- If a security manager exists and its SecurityManager.checkDelete(java.lang.String)
method denies delete access to the filepublic static final boolean remove(java.io.File f)
f
- A file to completely and utterly remove.
ArgumentNotValid
- if f is null.
java.lang.SecurityException
- If a security manager exists and its SecurityManager.checkDelete(java.lang.String)
method denies delete access to the filepublic static java.lang.String formatFilename(java.lang.String filename)
filename
- the filename to format correctly
public static java.util.List getFilesRecursively(java.lang.String dir, java.util.List<java.io.File> files, java.lang.String type)
dir
- Path of base directoryfiles
- Initially, an empty list (e.g. an ArrayList)type
- The extension/ending of the files to retrieve (e.g. ".xml",
".ARC")
public static final java.lang.String readFile(java.io.File filename) throws java.io.FileNotFoundException, java.io.IOException
filename
- -
file to load
java.io.FileNotFoundException
java.io.IOException
public static final void copyFile(java.io.File from, java.io.File to)
from
- original to copyto
- destination of copy
IOFailure
- if an io error occurs while copying file.public static final void copyDirectory(java.io.File from, java.io.File to) throws IOFailure
from
- Original directory (or file, for that matter) to copy.to
- Destination directory, i.e. the 'new name' of the copy of the
from directory.
IOFailure
public static byte[] readBinaryFile(java.io.File file) throws IOFailure
file
- A file to be read.
IOFailure
public static void writeBinaryFile(java.io.File file, byte[] b)
file
- The file to write the data tob
- The byte array to write to the filepublic static java.io.FilenameFilter getXmlFilesFilter()
public static void writeXmlToFile(org.dom4j.Document doc, java.io.File f) throws java.io.IOException
doc
- the document tree to savef
- the file to write the document to.
java.io.IOException
- author: SSCpublic static java.util.List<java.lang.String> readListFromFile(java.io.File file)
file
- The file to read from.
IOFailure
- on trouble reading the file.public static void writeCollectionToFile(java.io.File file, java.util.Collection<java.lang.String> collection)
file
- A file to write to. The contents of this file will be
overwritten.collection
- The collection to write. The order it will be
written in is unspecified.
IOFailure
- if any error occurs writing to the file.
ArgumentNotValid
- if file or collection is null.public static void makeSortedFile(java.io.File unsortedFile, java.io.File sortedOutput)
unsortedFile
- A file to sortsortedOutput
- The file to sort intopublic static void removeLineFromFile(java.lang.String line, java.io.File file)
line
- The full line to removefile
- The file to remove the line from. This file will be
rewritten in full, and the entire contents will be kept in memory
UnknownID
- If the file does not existpublic static boolean createDir(java.io.File dir) throws PermissionDenied
dir
- The directory to create
ArgumentNotValid
- If dir is null or its name is the empty string
PermissionDenied
- If directory cannot be created for any reason,
or is not writable.public static long getBytesFree(java.io.File f)
f
- a given file
public static java.lang.String relativeTo(java.io.File theFile, java.io.File crawlDir)
theFile
- A file to make relativecrawlDir
- A directory
public static long countLines(java.io.File file)
file
- the file to read
public static java.io.InputStream getEphemeralInputStream(java.io.File file)
file
- A file to read. This file will be deleted when the
inputstream is closed, finalized, reaches end-of-file, or when the
VM closes.
public static java.io.File makeValidFileFromExisting(java.lang.String filename) throws IOFailure
filename
- The file to create the File object from
IOFailure
public static void writeFileToStream(java.io.File f, java.io.OutputStream out)
f
- A file to write to the stream.out
- The stream to write to.public static void writeStreamToFile(java.io.InputStream in, java.io.File f)
in
- A stream to read from. This stream is not closed by this
method.f
- The file to write the stream contents into.public static java.io.File getTempDir()
public static java.io.File createUniqueTempDir(java.io.File inDir, java.lang.String prefix)
inDir
- The directory where the temporary directory
should be created.prefix
- The prefix of the directory name, for identification
purposes.
ArgumentNotValid
- if inDir is not an existing
directory that can be written to.
IOFailure
- if a free name couldn't be found within a reasonable
number of tries.public static java.lang.String readLastLine(java.io.File file)
file
- input file to read last line from.
ArgumentNotValid
- on null argument, or file is not a readable
file.
IOFailure
- on IO trouble reading file.public static void appendToFile(java.io.File file, java.lang.String... lines)
file
- A file to append to.lines
- The lines to write.
IOFailure
- if anything goes wrong writing.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |