在Kotlin程序中,可以使用以下方法将进程的输出复制到文件和控制台:
ProcessBuilder
类创建一个进程,并设置其输出流为ProcessBuilder.Redirect.PIPE
,这样可以将进程的输出流与当前进程的输入流连接起来。val processBuilder = ProcessBuilder("your_command")
processBuilder.redirectOutput(ProcessBuilder.Redirect.PIPE)
start()
方法启动进程,并获取其输出流。val process = processBuilder.start()
val inputStream = process.inputStream
BufferedReader
对象来读取进程的输出。val reader = BufferedReader(InputStreamReader(inputStream))
PrintWriter
对象来将输出写入文件。val file = File("output.txt")
val writer = PrintWriter(file)
var line: String?
while (reader.readLine().also { line = it } != null) {
println(line)
writer.println(line)
}
reader.close()
writer.close()
process.destroy()
这样,进程的输出就会同时显示在控制台上,并保存到指定的文件中。
对于腾讯云相关产品和产品介绍链接地址,由于要求不能提及具体的品牌商,建议在使用云计算服务时,可以参考腾讯云提供的云服务器(CVM)和对象存储(COS)等产品,以满足云计算需求。具体的产品介绍和文档可以在腾讯云官方网站上找到。
领取专属 10元无门槛券
手把手带您无忧上云