encode Into Byte Array
Начиная с Kotlin: 2.2
fun encodeIntoByteArray(source: ByteArray, destination: ByteArray, destinationOffset: Int = 0, startIndex: Int = 0, endIndex: Int = source.size): Int
Кодирует байты из указанного массива source или его поддиапазона и записывает полученные символы в массив destination. Возвращает количество записанных символов.
Добавление '=' в конец результата кодирования зависит от значения PaddingOption, заданного для данного экземпляра Base64.
Возвращает
количество символов, записанных в массив destination.
Параметры
массив, из которого нужно кодировать байты.
массив, в который нужно записать символы.
начальный индекс в массиве destination, с которого записываются символы; по умолчанию — 0.
начало поддиапазона для кодирования (включительно); по умолчанию — 0.
конец поддиапазона для кодирования (не включительно); по умолчанию — размер массива source.
Выбрасывает
если полученные символы не помещаются в массив destination, начиная с указанного значения destinationOffset, или если этот индекс находится за пределами диапазона индексов массива destination.
если startIndex > endIndex.
Примеры
import kotlin.io.encoding.*
import kotlin.test.*
fun main() {
//sampleStart
val data = byteArrayOf(-1, 0, -2, 0, -3)
val outputBuffer = ByteArray(1024)
var bufferPosition = 0
// encode data into buffer using Base64 encoding
// and keep track of the number of bytes written
bufferPosition += Base64.encodeIntoByteArray(data, outputBuffer)
println(outputBuffer.decodeToString(endIndex = bufferPosition)) // /wD+AP0=
outputBuffer[bufferPosition++] = '|'.code.toByte()
// encode data subrange to the buffer, writing it from the given offset
bufferPosition += Base64.encodeIntoByteArray(
data,
destination = outputBuffer,
destinationOffset = bufferPosition,
startIndex = 1,
endIndex = 3
)
println(outputBuffer.decodeToString(endIndex = bufferPosition)) // /wD+AP0=|AP4=
//sampleEnd
}
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.io.encoding/-base64/encode-into-byte-array.html