Scala wrapper around java.nio.files.Path
Attributes
- Companion:
- object
- Graph
- Supertypes
- trait Serializableclass Objecttrait Matchableclass Any
Members list
Value members
Concrete methods
For large number of lines that may not fit in memory, use printLines
For large number of lines that may not fit in memory, use printLines
Attributes
If you need to specify a charset, use the above version
If you need to specify a charset, use the above version
Attributes
Attributes
- See also:
canonicalFile
Resolves ../../foo to the fully qualified path
Resolves ../../foo to the fully qualified path
Attributes
Changes the file-extension by renaming this file; if file does not have an extension, it adds the extension Example usage file"foo.java".changeExtensionTo(".scala")
Changes the file-extension by renaming this file; if file does not have an extension, it adds the extension Example usage file"foo.java".changeExtensionTo(".scala")
If file does not exist (or is a directory) no change is done and the current file is returned
Attributes
Attributes
- Returns:
characters of this file
Attributes
- Returns:
checksum of this file (or directory) in hex format
If this is a directory, remove all its children If its a file, empty the contents
If this is a directory, remove all its children If its a file, empty the contents
Attributes
More Scala friendly way of doing Files.walk Note: This is lazy (returns an Iterator) and won't evaluate till we reify the iterator (e.g. using .toList)
More Scala friendly way of doing Files.walk Note: This is lazy (returns an Iterator) and won't evaluate till we reify the iterator (e.g. using .toList)
Attributes
Check if this directory contains this file
Check if this directory contains this file
Attributes
- strict
If strict is false, it would return true for self.contains(self)
- Returns:
true if this is a directory and it contains this file
Attributes
- Returns:
the content of this file as string
return the content type of the file e.g. text/html
return the content type of the file e.g. text/html
Attributes
Copy this file to destination similar to unix cp command
Copy this file to destination similar to unix cp command
Attributes
- See also:
copyToDirectory() if you want to copy into another directory
Copies this file into the given directory
Copies this file into the given directory
Attributes
- Returns:
the File referencing the new file created under destination
Create this directory and all its parents Unlike the JDK, this by default sanely handles the JDK-8130464 bug If you want default Java behaviour, use File.LinkOptions.noFollow
Create this directory and all its parents Unlike the JDK, this by default sanely handles the JDK-8130464 bug If you want default Java behaviour, use File.LinkOptions.noFollow
Attributes
Create this directory
Create this directory
Attributes
Create this file
Create this file
Attributes
Create this file. If it exists, don't do anything
Create this file. If it exists, don't do anything
Attributes
- asDirectory
If you want this file to be created as a directory instead, set this to true (false by default)
- createParents
If you also want all the parents to be created from root to this file (false by default)
Deletes this file or directory Unless otherwise specified, this does not follow symlinks i.e. if this is a symlink, only the symlink itself is deleted and not the linked object
Deletes this file or directory Unless otherwise specified, this does not follow symlinks i.e. if this is a symlink, only the symlink itself is deleted and not the linked object
Attributes
- swallowIOExceptions
If this is set to true, any exception thrown is swallowed
Compares the receiver object (this
) with the argument object (that
) for equivalence.
Compares the receiver object (this
) with the argument object (that
) for equivalence.
Any implementation of this method should be an equivalence relation:
- It is reflexive: for any instance
x
of typeAny
,x.equals(x)
should returntrue
. - It is symmetric: for any instances
x
andy
of typeAny
,x.equals(y)
should returntrue
if and only ify.equals(x)
returnstrue
. - It is transitive: for any instances
x
,y
, andz
of typeAny
ifx.equals(y)
returnstrue
andy.equals(z)
returnstrue
, thenx.equals(z)
should returntrue
.
If you override this method, you should verify that your implementation remains an equivalence relation.
Additionally, when overriding this method it is usually necessary to override hashCode
to ensure that
objects which are "equal" (o1.equals(o2)
returns true
) hash to the same scala.Int.
(o1.hashCode.equals(o2.hashCode)
).
Attributes
- that
the object to compare against this object for equality.
- Returns:
true
if the receiver object is equivalent to the argument;false
otherwise.- Definition Classes
- Any
Attributes
- includeAll
whether all extension tokens should be included, or just the last one e.g. for bundle.tar.gz should it be .tar.gz or .gz
- includeDot
whether the dot should be included in the extension or not
- toLowerCase
to lowercase the extension or not e.g. foo.HTML should have .html or .HTML
- Returns:
extension (including the dot) of this file if it is a regular file and has an extension, else None
Util to glob from this file's path
Util to glob from this file's path
Attributes
- includePath
If true, we don't need to set path glob patterns e.g. instead of **.txt we just use *.txt
- maxDepth
Recurse up to maxDepth
- Returns:
Set of files that matched
Util to match from this file's path using Regex
Util to match from this file's path using Regex
Attributes
- includePath
If true, we don't need to set path glob patterns e.g. instead of **.txt we just use *.txt
- maxDepth
Recurse up to maxDepth
- Returns:
Set of files that matched
- See also:
glob
Returns the extension if file is a regular file If file is unreadable or does not exist, it is assumed to be not a regular file See: https://github.com/pathikrit/better-files/issues/89
Returns the extension if file is a regular file If file is unreadable or does not exist, it is assumed to be not a regular file See: https://github.com/pathikrit/better-files/issues/89
Attributes
Calculate a hash code value for the object.
Calculate a hash code value for the object.
The default hashing algorithm is platform dependent.
Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)
) yet
not be equal (o1.equals(o2)
returns false
). A degenerate implementation could always return 0
.
However, it is required that if two objects are equal (o1.equals(o2)
returns true
) that they have
identical hash codes (o1.hashCode.equals(o2.hashCode)
). Therefore, when overriding this method, be sure
to verify that the behavior is consistent with the equals
method.
Attributes
- Returns:
the hash code value for this object.
- Definition Classes
- Any
Attributes
- Returns:
true if this file (or the file found by following symlink) is a directory
Attributes
- Returns:
true if file is not present or empty directory or 0-bytes file
Check if a file is locked.
Check if a file is locked.
Attributes
- isShared
true to request a shared lock, false to request an exclusive lock.
- mode
The random access mode.
- position
The position at which the locked region is to start; must be non-negative.
- size
The size of the locked region; must be non-negative, and the sum position + size must be non-negative.
- Returns:
True if the file is locked, false otherwise.
This differs from the above as this checks if the JVM can read this file even though the OS cannot in certain platforms
This differs from the above as this checks if the JVM can read this file even though the OS cannot in certain platforms
Attributes
Attributes
- Returns:
true if this file (or the file found by following symlink) is a regular file
Attributes
- Returns:
true if this file is exactly same as that file For directories, it checks for equivalent directory structure
Almost same as isSameContentAs but uses faster md5 hashing to compare (and thus small chance of false positive) Also works for directories
Almost same as isSameContentAs but uses faster md5 hashing to compare (and thus small chance of false positive) Also works for directories
Attributes
Attributes
- Returns:
number of lines in this file
Iterate over lines in a file (auto-close stream on complete) If you want partial iteration use @see lines()
Iterate over lines in a file (auto-close stream on complete) If you want partial iteration use @see lines()
Attributes
Load all lines from this file Note: Large files may cause an OutOfMemory in which case, use the streaming version @see lineIterator
Load all lines from this file Note: Large files may cause an OutOfMemory in which case, use the streaming version @see lineIterator
Attributes
- Returns:
all lines in this file
List files recursively up to given depth using a custom file filter
List files recursively up to given depth using a custom file filter
Attributes
load bytes into memory - for large files you want to use @see bytes which uses an iterator
load bytes into memory - for large files you want to use @see bytes which uses an iterator
Attributes
Move this to destination similar to unix mv command
Move this to destination similar to unix mv command
Attributes
- See also:
moveToDirectory() if you want to move into another directory
Moves this file into the given directory
Moves this file into the given directory
Attributes
- Returns:
the File referencing the new file created under destination
Name of file Certain files may not have a name e.g. root directory - returns empty string in that case
Name of file Certain files may not have a name e.g. root directory - returns empty string in that case
Attributes
Certain files may not have a name e.g. root directory - returns None in that case
Certain files may not have a name e.g. root directory - returns None in that case
Attributes
Return the file name without extension e.g. for foo.tar.gz return foo
Return the file name without extension e.g. for foo.tar.gz return foo
Attributes
Attributes
- includeAll
For files with multiple extensions e.g. "bundle.tar.gz" nameWithoutExtension(includeAll = true) returns "bundle" nameWithoutExtension(includeAll = false) returns "bundle.tar"
Attributes
- Returns:
for directories, true if it has no children, false otherwise for files, true if it is a 0-byte file, false otherwise else true if it exists, false otherwise
Return parent of this file NOTE: This API returns null if this file is the root; please use parentOption if you expect to handle roots
Return parent of this file NOTE: This API returns null if this file is the root; please use parentOption if you expect to handle roots
Attributes
Attributes
- Returns:
Some(parent) of this file or None if this is the root and thus has no parent
Write lines into this file
Write lines into this file
Attributes
Deserialize a object using Java's default serialization from this file
Deserialize a object using Java's default serialization from this file
Attributes
register a watch service for given events
register a watch service for given events
Attributes
getResource... always uses "/" for separator https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html#getResource(java.lang.String)
getResource... always uses "/" for separator https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html#getResource(java.lang.String)
Attributes
Attributes
- returnZeroIfMissing
If true, return zeroes for missing files*
- Returns:
file size (for directories, return size of the directory) in bytes
Streamed unzipping is slightly slower but supports larger files and more encodings
Streamed unzipping is slightly slower but supports larger files and more encodings
Attributes
- destinationDirectory
destination folder; Creates this if it does not exist
- Returns:
The destination where contents are unzipped
- See also:
Attributes
- Returns:
Some(target) if this is a symbolic link (to target) else None
test if file has this permission
test if file has this permission
Attributes
Attributes
- Returns:
java.io.File version of this
Returns a string representation of the object.
Returns a string representation of the object.
The default representation is platform dependent.
Attributes
- Returns:
a string representation of the object.
- Definition Classes
- Any
Java's temporary files/directories are not cleaned up by default.
If we explicitly call .deleteOnExit()
, it gets added to shutdown handler which is not ideal
for long running systems with millions of temporary files as:
a) it would slowdown shutdown and
b) occupy unnecessary disk-space during app lifetime
Java's temporary files/directories are not cleaned up by default.
If we explicitly call .deleteOnExit()
, it gets added to shutdown handler which is not ideal
for long running systems with millions of temporary files as:
a) it would slowdown shutdown and
b) occupy unnecessary disk-space during app lifetime
This util auto-deletes the resource when done using the Dispose facility
Example usage: File.temporaryDirectory().foreach(tempDir => doSomething(tempDir)
Attributes
Similar to string.split(), this returns tokens from the file by given splitter (default is whitespace)
Similar to string.split(), this returns tokens from the file by given splitter (default is whitespace)
Attributes
Similar to the UNIX command touch - create this file if it does not exist and set its last modification time
Similar to the UNIX command touch - create this file if it does not exist and set its last modification time
Attributes
unzip to a temporary zip file
unzip to a temporary zip file
Attributes
- Returns:
the zip file
Unzips this zip file
Unzips this zip file
Attributes
- charset
Optional charset parameter
- destination
destination folder; Creates this if it does not exist
- safeUnzip
Optional parameter to set whether unzipTo should unzip entries containing directory traversal characters to directories outside the destination
- zipFilter
An optional param to reject or accept unzipping a file
- Returns:
The destination where contents are unzipped
Set a file attribute e.g. file("dos:system") = true
Set a file attribute e.g. file("dos:system") = true
Attributes
Attributes
- Returns:
Some(true) if file is guaranteed to exist Some(false) if file is guaranteed to not exist None if the status is unknown e.g. if file is unreadable
- See also:
Walk the directory tree recursively upto maxDepth
Walk the directory tree recursively upto maxDepth
Attributes
- Returns:
List of children in BFS maxDepth level deep (includes self since self is at depth = 0)
Write byte array to file. For large contents consider using the writeBytes
Write byte array to file. For large contents consider using the writeBytes
Attributes
Serialize a object using Java's serializer into this file, creating it and its parents if they do not exist
Serialize a object using Java's serializer into this file, creating it and its parents if they do not exist
Attributes
zip to a temp directory
zip to a temp directory
Attributes
- Returns:
the target directory
Adds these files into this zip file Example usage: File("test.zip").zipIn(Seq(file"hello.txt", file"hello2.txt"))
Adds these files into this zip file Example usage: File("test.zip").zipIn(Seq(file"hello.txt", file"hello2.txt"))