Расширения для java.io.File
appendBytes
Добавляет массив байтов к содержимому этого файла.
fun File.appendBytes(array: ByteArray)
appendText
Добавляет текст к содержимому этого файла, используя UTF-8 или указанный кодировку.
fun File.appendText( text: String, charset: Charset = Charsets.UTF_8)
bufferedReader
Возвращает новый BufferedReader для чтения содержимого этого файла.
fun File.bufferedReader( charset: Charset = Charsets.UTF_8, bufferSize: Int = DEFAULT_BUFFER_SIZE ): BufferedReader
bufferedWriter
Возвращает новый BufferedWriter для записи содержимого этого файла.
fun File.bufferedWriter( charset: Charset = Charsets.UTF_8, bufferSize: Int = DEFAULT_BUFFER_SIZE ): BufferedWriter
copyRecursively
Копирует этот файл со всеми его подкаталогами в указанную целевую директорию. Если какие-либо промежуточные директории отсутствуют, они будут созданы.
fun File.copyRecursively(
target: File,
overwrite: Boolean = false,
onError: (File, IOException) -> OnErrorAction = { _, exception -> throw exception }
): Boolean copyTo
Копирует этот файл в указанный целевой файл.
fun File.copyTo( target: File, overwrite: Boolean = false, bufferSize: Int = DEFAULT_BUFFER_SIZE ): File
deleteRecursively
Удаляет этот файл и все его подкаталоги. Обратите внимание, что в случае неудачи может произойти частичное удаление.
fun File.deleteRecursively(): Boolean
endsWith
Определяет, заканчивается ли путь этого файла путем файла other.
fun File.endsWith(other: File): Boolean
Определяет, принадлежит ли этот файл к той же корневой директории, что и other, и заканчивается ли он всеми компонентами other в том же порядке. Так, если other содержит N компонентов, последние N компонентов this должны быть такими же, как в other. Для относительного other, this может принадлежать любой корневой директории.
fun File.endsWith(other: String): Boolean
extension
Возвращает расширение этого файла (без точки), или пустую строку, если его нет.
val File.extension: String
forEachBlock
forEachLine
Читает этот файл построчно, используя указанную кодировку, и вызывает action для каждой строки. Кодировка по умолчанию - UTF-8.
fun File.forEachLine( charset: Charset = Charsets.UTF_8, action: (line: String) -> Unit)
inputStream
Создаёт новый FileInputStream для этого файла и возвращает его.
fun File.inputStream(): FileInputStream
invariantSeparatorsPath
Возвращает путь этого файла, используя неизменный разделитель '/' для разделения имён в последовательности имён.
val File.invariantSeparatorsPath: String
isRooted
Определяет, имеет ли этот файл корень или представляет собой относительный путь.
val File.isRooted: Boolean
nameWithoutExtension
Возвращает имя файла без расширения.
val File.nameWithoutExtension: String
normalize
Удаляет все точки и разрешает все возможные .. в имени файла. Например, File("/foo/./bar/gav/../baaz").normalize() равно File("/foo/bar/baaz").
fun File.normalize(): File
outputStream
Создаёт новый FileOutputStream для этого файла и возвращает его.
fun File.outputStream(): FileOutputStream
printWriter
Возвращает новый PrintWriter для записи содержимого этого файла.
fun File.printWriter( charset: Charset = Charsets.UTF_8 ): PrintWriter
readBytes
Возвращает всё содержимое файла в виде массива байтов.
fun File.readBytes(): ByteArray
reader
Возвращает новый FileReader для чтения содержимого этого файла.
fun File.reader( charset: Charset = Charsets.UTF_8 ): InputStreamReader
readLines
Читает содержимое файла как список строк.
fun File.readLines( charset: Charset = Charsets.UTF_8 ): List<String>
readText
Получает всё содержимое этого файла как строку, используя UTF-8 или указанную charset.
fun File.readText(charset: Charset = Charsets.UTF_8): String
relativeTo
relativeToOrNull
relativeToOrSelf
resolve
Добавляет файл relative к этому, рассматривая это как директорию. Если relative имеет корень, возвращается relative. Например, File("/foo/bar").resolve(File("gav")) это File("/foo/bar/gav"). Эта функция дополняет relativeTo, поэтому f.resolve(g.relativeTo(f)) == g всегда должен быть true за исключением случая с разными корнями.
fun File.resolve(relative: File): File
resolveSibling
startsWith
Определяет, принадлежит ли этот файл к тому же корню, что и other, и начинается ли он со всех компонентов other в том же порядке. Таким образом, если other имеет N компонентов, первые N компонентов this должны быть такими же, как в other.
fun File.startsWith(other: File): Boolean
fun File.startsWith(other: String): Boolean
toRelativeString
useLines
Вызывает обратный вызов block, передавая ему последовательность всех строк в этом файле, и закрывает считывающее устройство после завершения обработки.
fun <T> File.useLines( charset: Charset = Charsets.UTF_8, block: (Sequence<String>) -> T ): T
walk
Получает последовательность для посещения этого каталога и всего его содержимого.
fun File.walk( direction: FileWalkDirection = FileWalkDirection.TOP_DOWN ): FileTreeWalk
walkBottomUp
Получает последовательность для посещения этого каталога и всего его содержимого снизу вверх. Используется поиск в глубину, и каталоги посещаются после всех их файлов.
fun File.walkBottomUp(): FileTreeWalk
walkTopDown
Получает последовательность для посещения этого каталога и всего его содержимого сверху вниз. Используется поиск в глубину, и каталоги посещаются до всех их файлов.
fun File.walkTopDown(): FileTreeWalk
writeBytes
Устанавливает содержимое этого файла как array байтов. Если этот файл уже существует, он будет перезаписан.
fun File.writeBytes(array: ByteArray)
writer
Возвращает новый FileWriter для записи содержимого этого файла.
fun File.writer( charset: Charset = Charsets.UTF_8 ): OutputStreamWriter
© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.io/java.io.-file/index.html