File

dotty.tools.io.File
See theFile companion object
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.

Attributes

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
Graph
Supertypes
trait Chars
trait Bytes
class Path
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Concrete methods

override def addExtension(ext: String): File

Attributes

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

Wraps a BufferedWriter around the result of writer().

Wraps a BufferedWriter around the result of writer().

Attributes

Obtains an InputStream.

Obtains an InputStream.

Attributes

override def length: Long

Attributes

Definition Classes
override def normalize: File

Attributes

Definition Classes

Obtains a OutputStream.

Obtains a OutputStream.

Attributes

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

Attributes

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.

Attributes

override def toAbsolute: File

Attributes

Definition Classes
override def toDirectory: Directory

Attributes

Definition Classes
override def toFile: File

Attributes

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

Attributes

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.

Attributes

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.

Attributes

Inherited methods

def /(child: File): File

Attributes

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

Attributes

Inherited from:
Path
def /(child: Path): Path

Attributes

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.

Attributes

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.

Attributes

Inherited from:
Chars

Attributes

Inherited from:
Bytes

Attributes

Inherited from:
Chars

Wraps a BufferedReader around the result of reader().

Wraps a BufferedReader around the result of reader().

Attributes

Inherited from:
Chars

Attributes

Inherited from:
Bytes

Attributes

Inherited from:
Bytes

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path

Caller is responsible for closing the returned BufferedSource.

Caller is responsible for closing the returned BufferedSource.

Attributes

Inherited from:
Chars
def createDirectory(force: Boolean, failIfExists: Boolean): Directory

Attributes

Inherited from:
Path
def createFile(failIfExists: Boolean): File

Attributes

Inherited from:
Path
def delete(): Unit

Attributes

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!

Attributes

Inherited from:
Path
def endsWith(other: Path): Boolean

Attributes

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

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
Path -> Any
Inherited from:
Path

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path
def hasExtension(ext: String, exts: String*): Boolean

Attributes

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.

Attributes

Returns:

the hash code value for this object.

Definition Classes
Path -> Any
Inherited from:
Path
def ifDirectory[T](f: Directory => T): Option[T]

Attributes

Inherited from:
Path
def ifFile[T](f: File => T): Option[T]

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path
def isFresher(other: Path): Boolean

Attributes

Inherited from:
Path
def isSame(other: Path): Boolean

Attributes

Inherited from:
Path

Attributes

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.

Attributes

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.

Attributes

Inherited from:
Chars

Attributes

Inherited from:
Path

Attributes

Returns:

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

Inherited from:
Path

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path

Obtains an InputStreamReader wrapped around a FileInputStream.

Obtains an InputStreamReader wrapped around a FileInputStream.

Attributes

Inherited from:
Chars
def relativize(other: Path): Path

Attributes

Inherited from:
Path
def resolve(other: Path): Path

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path
def slurp(codec: Codec): String

Attributes

Inherited from:
Chars
def slurp(): String

Convenience function to import entire file into a String.

Convenience function to import entire file into a String.

Attributes

Inherited from:
Chars

Attributes

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.

Attributes

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.

Attributes

Inherited from:
Bytes

Attributes

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.

Attributes

Returns:

a string representation of the object.

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

Attributes

Inherited from:
Path
def toURL: URL

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path

Equivalent to walkFilter(_ => true).

Equivalent to walkFilter(_ => true).

Attributes

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.

Attributes

Inherited fields

Attributes

Inherited from:
Path

Attributes

Inherited from:
Path