transferFrom
Read and exhaust bytes from input into this buffer. Stops reading data on input exhaustion.
Parameters
input
the stream to read data from.
Samples
import kotlinx.io.*
import java.io.ByteArrayInputStream
import java.io.ByteArrayOutputStream
import java.nio.ByteBuffer
import java.util.zip.GZIPInputStream
import java.util.zip.GZIPOutputStream
import kotlin.test.Test
import kotlin.test.assertContentEquals
import kotlin.test.assertEquals
import kotlin.test.assertTrue
fun main() {
//sampleStart
val buffer = Buffer()
buffer.writeString("hello")
val outputStream = ByteArrayOutputStream()
buffer.readTo(outputStream)
assertTrue(buffer.exhausted())
val inputStream = ByteArrayInputStream(outputStream.toByteArray())
buffer.transferFrom(inputStream)
assertEquals("hello", buffer.readString())
//sampleEnd
}
Reads all data from source into this buffer.
Samples
import kotlinx.io.*
import java.io.ByteArrayInputStream
import java.io.ByteArrayOutputStream
import java.nio.ByteBuffer
import java.util.zip.GZIPInputStream
import java.util.zip.GZIPOutputStream
import kotlin.test.Test
import kotlin.test.assertContentEquals
import kotlin.test.assertEquals
import kotlin.test.assertTrue
fun main() {
//sampleStart
val buffer = Buffer()
val nioBuffer = ByteBuffer.allocate(32)
nioBuffer.put("hello".encodeToByteArray())
nioBuffer.position(0)
nioBuffer.limit(5)
buffer.transferFrom(nioBuffer)
assertEquals("hello", buffer.readString())
assertEquals(5, nioBuffer.position())
//sampleEnd
}