File

class File(jpath: JPath)(implicit constructorCodec: Codec) extends Path with Chars

An abstraction for files. For character data, a Codec can be supplied at either creation time or when a method involving character data is called (with the latter taking precedence if supplied.) If neither is available, the value of scala.io.Codec.default is used.

Authors:

Paul Phillips

Since:

2.8 ''Note: This is library is considered experimental and should not be used unless you know what you are doing.''

Companion:
object
trait Chars
trait Bytes
class Path
class Object
trait Matchable
class Any

Value members

Concrete methods

override def addExtension(ext: String): File
Definition Classes
def appendAll(strings: String*): Unit

Wraps a BufferedWriter around the result of writer().

Wraps a BufferedWriter around the result of writer().

Obtains an InputStream.

Obtains an InputStream.

override def length: Long
Definition Classes
override def normalize: File
Definition Classes

Obtains a OutputStream.

Obtains a OutputStream.

def printlnAll(strings: String*): Unit

Calls println on each string (so it adds a newline in the PrintWriter fashion.)

Calls println on each string (so it adds a newline in the PrintWriter fashion.)

def setExecutable(executable: Boolean, ownerOnly: Boolean): Boolean

Reflection since we're into the java 6+ API.

Reflection since we're into the java 6+ API.

override def toAbsolute: File
Definition Classes
override def toDirectory: Directory
Definition Classes
override def toFile: File
Definition Classes
override def walkFilter(cond: Path => Boolean): Iterator[Path]

If this path is a directory, recursively iterate over its contents. The supplied condition is a filter which is applied to each element, with that branch of the tree being closed off if it is false. So for example if the condition is false for some subdirectory, nothing under that directory will be in the Iterator. If it's true, all files for which the condition holds and are directly in that subdirectory are in the Iterator, and all sub-subdirectories are recursively evaluated

If this path is a directory, recursively iterate over its contents. The supplied condition is a filter which is applied to each element, with that branch of the tree being closed off if it is false. So for example if the condition is false for some subdirectory, nothing under that directory will be in the Iterator. If it's true, all files for which the condition holds and are directly in that subdirectory are in the Iterator, and all sub-subdirectories are recursively evaluated

Definition Classes
def writeAll(strings: String*): Unit

Creates a new file and writes all the Strings to it.

Creates a new file and writes all the Strings to it.

def writer(append: Boolean, codec: Codec): OutputStreamWriter

Obtains an OutputStreamWriter wrapped around a FileOutputStream. This should behave like a less broken version of java.io.FileWriter, in that unlike the java version you can specify the encoding.

Obtains an OutputStreamWriter wrapped around a FileOutputStream. This should behave like a less broken version of java.io.FileWriter, in that unlike the java version you can specify the encoding.

Inherited methods

def /(child: File): File
Inherited from:
Path
def /(child: Directory): Directory
Inherited from:
Path
def /(child: Path): Path
Inherited from:
Path
def /(child: String): Path

Creates a new Path with the specified path appended. Assumes the type of the new component implies the type of the result.

Creates a new Path with the specified path appended. Assumes the type of the new component implies the type of the result.

Inherited from:
Path
def applyReader[T](f: BufferedReader => T): T

Creates a BufferedReader and applies the closure, automatically closing it on completion.

Creates a BufferedReader and applies the closure, automatically closing it on completion.

Inherited from:
Chars
Inherited from:
Chars

Wraps a BufferedReader around the result of reader().

Wraps a BufferedReader around the result of reader().

Inherited from:
Chars
Inherited from:
Bytes
Inherited from:
Bytes
Inherited from:
Path
Inherited from:
Path
Inherited from:
Path

Caller is responsible for closing the returned BufferedSource.

Caller is responsible for closing the returned BufferedSource.

Inherited from:
Chars
def createDirectory(force: Boolean, failIfExists: Boolean): Directory
Inherited from:
Path
def createFile(failIfExists: Boolean): File
Inherited from:
Path
def delete(): Unit
Inherited from:
Path

Deletes the path recursively. Returns false on failure. Use with caution!

Deletes the path recursively. Returns false on failure. Use with caution!

Inherited from:
Path
def endsWith(other: Path): Boolean
Inherited from:
Path
override def equals(other: Any): Boolean

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 type Any, x.equals(x) should return true.
  • It is symmetric: for any instances x and y of type Any, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any instances x, y, and z of type Any if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.

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)).

Value parameters:
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
Path -> Any
Inherited from:
Path
Inherited from:
Path
Inherited from:
Path
def hasExtension(ext: String, exts: String*): Boolean
Inherited from:
Path
override def hashCode(): Int

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.

Returns:

the hash code value for this object.

Definition Classes
Path -> Any
Inherited from:
Path
def ifDirectory[T](f: Directory => T): Option[T]
Inherited from:
Path
def ifFile[T](f: File => T): Option[T]
Inherited from:
Path
Inherited from:
Path
Inherited from:
Path
Inherited from:
Path
Inherited from:
Path
def isFresher(other: Path): Boolean
Inherited from:
Path
def isSame(other: Path): Boolean
Inherited from:
Path
Inherited from:
Path
def lines(codec: Codec): Iterator[String]

Beware! Leaks an InputStream which will not be closed until it gets finalized.

Beware! Leaks an InputStream which will not be closed until it gets finalized.

Inherited from:
Chars

Beware! Leaks an InputStream which will not be closed until it gets finalized.

Beware! Leaks an InputStream which will not be closed until it gets finalized.

Inherited from:
Chars
Inherited from:
Path
Returns:

The path of the parent directory, or root if path is already root

Inherited from:
Path
Inherited from:
Path
Inherited from:
Path

Obtains an InputStreamReader wrapped around a FileInputStream.

Obtains an InputStreamReader wrapped around a FileInputStream.

Inherited from:
Chars
def relativize(other: Path): Path
Inherited from:
Path
def resolve(other: Path): Path
Inherited from:
Path
Inherited from:
Path
def slurp(codec: Codec): String
Inherited from:
Chars
def slurp(): String

Convenience function to import entire file into a String.

Convenience function to import entire file into a String.

Inherited from:
Chars
Inherited from:
Path

If this path is absolute, returns it: otherwise, returns an absolute path made up of root / this.

If this path is absolute, returns it: otherwise, returns an absolute path made up of root / this.

Inherited from:
Path

This method aspires to be the fastest way to read a stream of known length into memory.

This method aspires to be the fastest way to read a stream of known length into memory.

Inherited from:
Bytes
Inherited from:
Path
override def toString(): String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Returns:

a string representation of the object.

Definition Classes
Path -> Any
Inherited from:
Path
def toURI: URI
Inherited from:
Path
def toURL: URL
Inherited from:
Path
Inherited from:
Path

Equivalent to walkFilter(_ => true).

Equivalent to walkFilter(_ => true).

Inherited from:
Path

Concrete fields

override val creationCodec: Codec

Calls to methods requiring byte<->char transformations should be offered in a form which allows specifying the codec. When it is not specified, the one discovered at creation time will be used, which will always find the one in scala.io.Codec if no other is available. This can be overridden to use a different default.

Calls to methods requiring byte<->char transformations should be offered in a form which allows specifying the codec. When it is not specified, the one discovered at creation time will be used, which will always find the one in scala.io.Codec if no other is available. This can be overridden to use a different default.

Inherited fields

Inherited from:
Path
Inherited from:
Path