示例:将 InputStream 转换为 String
import java.io.*
fun main(args: Array<String>) {
val stream = ByteArrayInputStream("Hello there!".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)
}
运行程序时,输出将是
Hello there!
在上面的程序中,输入流是从 String 创建的,并存储在变量 stream 中。我们还需要一个字符串构建器 sb 来从流创建字符串。
然后,我们从 InputStreamReader
创建了一个缓冲读取器 br 来从 stream 读取行。使用 while 循环,我们读取每一行并将其附加到字符串构建器。最后,我们关闭了缓冲读取器。
由于读取器可能会抛出 IOException
,我们在主函数中声明了 throws IOException ,如下所示:
public static void main(String[] args) throws IOException
以下是相应的 Java 代码:Java 将 InputStream 转换为 String 的程序。