我的文件读写怎么好像不太一样

 

有关文件读写

其实各种语言之间读写应该大差不差

但是用kt大文件读写最合适的方法应该是缓冲流了

所以接下来请出的是

缓冲流!

如果要复制一个大文件,那文件就有来有去

所以就要一个输入流和一个输出流,分别指定原文件的路径和新文件的路径

val inputStream: InputStream = // 通过文件路径
val outputStream: OutputStream = FileOutputStream(file) // 可以像这样创建一个流,用open也是可以的

缓冲流当然要有一个缓冲区,攒够了再一股劲写进去

val buffer = ByteArray(1024) // 一次写入这么多字节
var length: Int

下面便是写入的重头戏

while (inputStream.read(buffer).also { length = it } > 0) {
    outputStream.write(buffer, 0, length) // 一次写入
}

你这语法糖用得挺多啊

最后别忘了

outputStream.flush() // flush意为刷新
outputStream.close()
inputStream.close()

关掉两个流

这样就能实现文件读写辣!

当然还有用use来自动关闭的写法,这些东西以后再写吧,手写又不是不能用(