java.lang.Object
org.apache.wicket.util.file.Files
File utility methods.
- Author:
- Jonathan Locke
-
Method Summary
Modifier and TypeMethodDescriptionstatic String
Strips off the given extension (probably returned from Files.extension()) from the path, yielding a base pathname.static String
cleanupFilename
(String filename) Replaces commonly unsupported characters with '_'static void
make a copy of a filestatic String
Gets extension from pathstatic String
Gets filename from pathstatic Instant
getLastModified
(File file) get last modification timestamp for filestatic File
for urls that point to local files (e.g.static File
getLocalFileFromUrl
(URL url) for urls that point to local files (e.g.static File[]
List all files inside the given file.static boolean
Utility method for creating a directory.static byte[]
read binary file fullystatic boolean
Deletes a normal file.static boolean
removeAsync
(File file, IFileCleaner fileCleaner) Schedules a file for removal asynchronously.static boolean
removeFolder
(File folder) Deletes a folder by recursively removing the files and folders inside it.static boolean
removeFolderAsync
(File folder, IFileCleaner fileCleaner) Schedules a folder and all files inside it for asynchronous removal.static int
writeTo
(File file, InputStream input) Writes the given input stream to the given filestatic int
writeTo
(File file, InputStream input, int bufSize) Writes the given input stream to the given file
-
Method Details
-
basePath
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
Gets extension from path- Parameters:
path
- The path- Returns:
- The extension, like "bmp" or "html", or null if none can be found
-
filename
Gets filename from path- Parameters:
path
- The path- Returns:
- The filename
-
remove
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:
true
if file was deleted,false
if the file don't exist, is a folder or cannot be removed for some reason
-
removeFolder
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:
true
if the folder is deleted successfully.
-
removeAsync
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:
false
if thefile
is null or a folder,true
- otherwise (i.e. if it is scheduled)
-
removeFolderAsync
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:
false
if thefolder
is null or a normal file,true
- otherwise (i.e. if it is scheduled)
-
writeTo
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
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
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
Replaces commonly unsupported characters with '_'
- Parameters:
filename
- to be cleaned- Returns:
- cleaned filename
-
copy
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
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,
null
otherwise - See Also:
-
getLocalFileFromUrl
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,
null
otherwise - See Also:
-
getLastModified
get last modification timestamp for file- Parameters:
file
-- Returns:
- timestamp
-
mkdirs
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:
true
if the creation is successful,false
- otherwise
-
list
List all files inside the given file.- Parameters:
file
- directory- Returns:
- files, never
null
-