在此程序中,您将学习使用Kotlin中的InputStreamReader将输入流转换为字符串。
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来读取流中的行。使用while循环,我们读取每一行并将其附加到字符串构建器中。最后,我们关闭了bufferedReader。
因为reader可以抛出IOException,所以我们在main函数中将抛出IOException设置为
public static void main(String[] args) throws IOException
这是等效的Java代码:将InputStream转换为String的Java程序。