Расширения для 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
Определяет, заканчивается ли путь к этому файлу путем к другому файлу.
fun File.endsWith(other: File): Boolean
Определяет, принадлежит ли этот файл к той же корневой директории, что и другой файл, и заканчивается ли он всеми компонентами другого файла в том же порядке. Таким образом, если другой файл имеет N компонентов, последние N компонентов текущего файла должны быть такими же, как у другого файла. Для относительного другого файла, текущий файл может принадлежать к любой корневой директории.
fun File.endsWith(other: String): Boolean
расширение
Возвращает расширение этого файла (без точки), или пустую строку, если его нет.
val File.extension: String
forEachBlock
Считывает файл по блокам байтов и вызывает action для каждого считанного блока. Размер блока имеет значение по умолчанию, зависящее от реализации. Эта функция передает массив байтов и количество байтов в массиве функции action.
fun File.forEachBlock( action: (buffer: ByteArray, bytesRead: Int) -> Unit)
Считывает файл по блокам байтов и вызывает action для каждого считанного блока. Эта функция передает массив байтов и количество байтов в массиве функции action.
fun File.forEachBlock( blockSize: Int, action: (buffer: ByteArray, bytesRead: Int) -> Unit)
forEachLine
Читает этот файл строка за строкой, используя указанную кодировку, и вызывает action для каждой строки. Кодировка по умолчанию - UTF-8.
fun File.forEachLine( charset: Charset = Charsets.UTF_8, action: (line: String) -> Unit)
inputStream
Создает новый FileInputStream для этого файла и возвращает его.
fun File.inputStream(): FileInputStream
путь с неизменными разделителями
Возвращает путь этого файла, используя неизменный разделитель '/' для разделения имен в последовательности имён.
val File.invariantSeparatorsPath: String
имеет корневой путь
Определяет, имеет ли этот файл корень или представляет собой относительный путь.
val File.isRooted: Boolean
имя без расширения
Возвращает имя файла без расширения.
val File.nameWithoutExtension: String
нормализовать
Удаляет все . и разрешает все возможные .. в имени файла. Например, 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
Устанавливает содержимое этого файла в виде массива байтов. Если этот файл уже существует, он перезаписывается.
fun File.writeBytes(array: ByteArray)
writer
Возвращает новый FileWriter для записи содержимого этого файла.
fun File.writer( charset: Charset = Charsets.UTF_8 ): OutputStreamWriter
writeText
Устанавливает содержимое этого файла как текст, закодированный с использованием UTF-8 или указанного кодирования. Если файл существует, он перезаписывается.
fun File.writeText( text: String, charset: Charset = Charsets.UTF_8)
© 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