Package org.apache.wicket.util.file
Class Files
- java.lang.Object
-
- org.apache.wicket.util.file.Files
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static StringbasePath(String path, String extension)Strips off the given extension (probably returned from Files.extension()) from the path, yielding a base pathname.static StringcleanupFilename(String filename)Replaces commonly unsupported characters with '_'static voidcopy(File sourceFile, File targetFile)make a copy of a filestatic Stringextension(String path)Gets extension from pathstatic Stringfilename(String path)Gets filename from pathstatic InstantgetLastModified(File file)get last modification timestamp for filestatic FilegetLocalFileFromUrl(String url)for urls that point to local files (e.g.static FilegetLocalFileFromUrl(URL url)for urls that point to local files (e.g.static File[]list(File file)List all files inside the given file.static booleanmkdirs(File folder)Utility method for creating a directory.static byte[]readBytes(File file)read binary file fullystatic booleanremove(File file)Deletes a normal file.static booleanremoveAsync(File file, IFileCleaner fileCleaner)Schedules a file for removal asynchronously.static booleanremoveFolder(File folder)Deletes a folder by recursively removing the files and folders inside it.static booleanremoveFolderAsync(File folder, IFileCleaner fileCleaner)Schedules a folder and all files inside it for asynchronous removal.static intwriteTo(File file, InputStream input)Writes the given input stream to the given filestatic intwriteTo(File file, InputStream input, int bufSize)Writes the given input stream to the given file
-
-
-
Method Detail
-
basePath
public static String basePath(String path, String extension)
Strips off the given extension (probably returned from Files.extension()) from the path, yielding a base pathname.- Parameters:
path- The path, possibly with an extension to stripextension- The extension to strip, or null if no extension exists- Returns:
- The path without any extension
-
extension
public static String extension(String path)
Gets extension from path- Parameters:
path- The path- Returns:
- The extension, like "bmp" or "html", or null if none can be found
-
filename
public static String filename(String path)
Gets filename from path- Parameters:
path- The path- Returns:
- The filename
-
remove
public static boolean remove(File file)
Deletes a normal file.If the file cannot be deleted for any reason then at most 50 retries are attempted with delay of 100ms at each 10th attempt.
- Parameters:
file- the file to delete- Returns:
trueif file was deleted,falseif the file don't exist, is a folder or cannot be removed for some reason
-
removeFolder
public static boolean removeFolder(File folder)
Deletes a folder by recursively removing the files and folders inside it. Delegates the work toremove(File)for plain files.- Parameters:
folder- the folder to delete- Returns:
trueif the folder is deleted successfully.
-
removeAsync
public static boolean removeAsync(File file, IFileCleaner fileCleaner)
Schedules a file for removal asynchronously.- Parameters:
file- the file to be removedfileCleaner- the file cleaner that will be used to remove the file- Returns:
falseif thefileis null or a folder,true- otherwise (i.e. if it is scheduled)
-
removeFolderAsync
public static boolean removeFolderAsync(File folder, IFileCleaner fileCleaner)
Schedules a folder and all files inside it for asynchronous removal.- Parameters:
folder- the folder to be removedfileCleaner- the file cleaner that will be used to remove the file- Returns:
falseif thefolderis null or a normal file,true- otherwise (i.e. if it is scheduled)
-
writeTo
public static int writeTo(File file, InputStream input) throws IOException
Writes the given input stream to the given file- Parameters:
file- The file to write toinput- The input- Returns:
- Number of bytes written
- Throws:
IOException
-
readBytes
public static byte[] readBytes(File file) throws IOException
read binary file fully- Parameters:
file- file to read- Returns:
- byte array representing the content of the file
- Throws:
IOException- is something went wrong
-
writeTo
public static int writeTo(File file, InputStream input, int bufSize) throws IOException
Writes the given input stream to the given file- Parameters:
file- The file to write toinput- The inputbufSize- The memory buffer size. 4096 is a good value.- Returns:
- Number of bytes written
- Throws:
IOException
-
cleanupFilename
public static String cleanupFilename(String filename)
Replaces commonly unsupported characters with '_'
- Parameters:
filename- to be cleaned- Returns:
- cleaned filename
-
copy
public static void copy(File sourceFile, File targetFile) throws IOException
make a copy of a file- Parameters:
sourceFile- source file that needs to be clonedtargetFile- target file that should be a duplicate of source file- Throws:
IOException- if something went wrong
-
getLocalFileFromUrl
public static File getLocalFileFromUrl(URL url)
for urls that point to local files (e.g. 'file:' or 'jar:file:') this methods returns a reference to the local file- Parameters:
url- url of the resource- Returns:
- reference to a local file if url contains one,
nullotherwise - See Also:
getLocalFileFromUrl(String)
-
getLocalFileFromUrl
public static File getLocalFileFromUrl(String url)
for urls that point to local files (e.g. 'file:' or 'jar:file:') this methods returns a reference to the local file- Parameters:
url- url of the resource- Returns:
- reference to a local file if url contains one,
nullotherwise - See Also:
getLocalFileFromUrl(URL)
-
getLastModified
public static Instant getLastModified(File file)
get last modification timestamp for file- Parameters:
file-- Returns:
- timestamp
-
mkdirs
public static boolean mkdirs(File folder)
Utility method for creating a directory. If the creation didn't succeed for some reason then at most 50 attempts are made with delay of 100ms at every 10th attempt.- Parameters:
folder- the folder to create- Returns:
trueif the creation is successful,false- otherwise
-
-