![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e6ded2911ae446433693fdf16385bd52.png)
Kotlin
读文件
File
方式,一次性读取文件,大文件时阻塞时间长,CPU使用率高
val filePath = "D:\\Users\\yang.guo\\Downloads\\yang.txt"
val file : File = File(filePath)
val fileContent : String = file.readText().apply { println(this) }
val fileContentList : List<String> = file.readLines()
fileContentList.forEach { println(it) }
val fileByteArray = file.readBytes()
val fileContentFromByte = String(fileByteArray).apply { println(this) }
guo
/ ***/
never
var fis: FileInputStream? = null
try {
fis = FileInputStream(File(filePath))
val EOF = -1
val buffer = ByteArray(1024 * 8)
var count = 0
while (true) {
count = fis.read(buffer)
if (count == EOF) break else {
println(String(buffer, 0, count))
}
}
} catch (e: Exception) {
println(e)
} finally {
fis?.close()
}
var bis : BufferedInputStream ?= null
try {
bis = BufferedInputStream(FileInputStream(File(filePath)))
val EOF = -1
val buffer = ByteArray(1024 * 8)
var count = 0
while (true) {
count = bis.read(buffer)
if (count == EOF) break else {
println(String(buffer, 0, count))
}
}
}catch (e: Exception) {
println(e)
}finally {
bis?.close()
}
guo
/ ***/
never
var fr: FileReader? = null
try {
fr = FileReader(File(filePath))
val buffer = CharArray(1024 * 8)
var count = 0
while (true) {
count = fr.read(buffer)
if (count == -1) break else {
println(String(buffer, 0, count))
}
}
} catch (e: Exception) {
println(e)
} finally {
fr?.close()
}
var br: BufferedReader? = null
try {
br = BufferedReader(FileReader(File(filePath)))
val buffer = CharArray(1024 * 8)
var count = 0
while (true) {
count = br.read(buffer)
if (count == -1) break else {
println(String(buffer, 0, count))
}
}
} catch (e: Exception) {
println(e)
} finally {
br?.close()
}
guo
/ ***/
never
Kotlin
写文件
File
方式,一次性读取文件,大文件时阻塞时间长,CPU使用率高
val file = File(filePath)
file.writeText("ride")
file.appendText("bike")
file.appendBytes("2024 year".toByteArray())
var fos : FileOutputStream ?= null
try {
fos = FileOutputStream(File(filePath))
val buffer = ByteArray(1024 * 8)
fos.write(buffer)
}catch (e: Exception) {
println(e)
}finally {
fos?.close()
}
var bos : BufferedOutputStream ?= null
try {
bos = BufferedOutputStream(FileOutputStream(File(filePath)))
val buffer = ByteArray(1024 * 8)
bos.write(buffer)
}catch (e: Exception) {
println(e)
}finally {
fos?.close()
}
var fw: FileWriter? = null
try {
fw = FileWriter(File(filePath))
val buffer = CharArray(1024 * 8)
fw.write(buffer)
} catch (e: Exception) {
println(e)
} finally {
fw?.close()
}
var bw: BufferedWriter? = null
try {
bw = BufferedWriter(FileWriter(File(filePath)))
val buffer = CharArray(1024 * 8)
bw.write(buffer)
} catch (e: Exception) {
println(e)
} finally {
bw?.close()
}