English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Programa Kotlin que convierte InputStream a cadena (String)

Colección completa de ejemplos de Kotlin

En este programa, aprenderás a usar InputStreamReader en Kotlin para convertir un flujo de entrada a una cadena.

Ejemplo: convertir InputStream a String

import java.io.*
fun main(args: Array<String>) {
    val stream = ByteArrayInputStream("¡Hola allí!".toByteArray())
    val sb = StringBuilder()
    var line: String?
    val br = BufferedReader(InputStreamReader(stream))
    line = br.readLine()
    while (line != null) {
        sb.append(line)
        line = br.readLine()
    }
    br.close()
    println(sb)
}

Al ejecutar el programa, la salida es:

¡Hola allí!

En el programa anterior, la entrada de flujo se crea a partir de una cadena y se almacena en la variable stream. Necesitamos también un generador de cadenas sb para crear una cadena a partir del flujo.

Luego, creamos un lector de buffer de InputStreamReader, br, para leer las líneas del flujo. Utilizando un bucle while, leemos cada línea y la adjuntamos a un constructor de cadenas. Finalmente, cerramos el bufferedReader.

Debido a que el reader puede lanzar IOException, configuramos IOException como excepción lanzada en la función main.

public static void main(String[] args) throws IOException

Este es el código Java equivalente:Java programa que convierte InputStream a String

Colección completa de ejemplos de Kotlin