08-文件读取
13.2.1 文件读取
Kotlin在java.io.File的基础上提供了大量的扩展方法,这些扩展函数位于Kotlin的kotlin.io包下。如果需要读取一个文件,则可以使用readText方法,它直接返回整个文件内容。如果需要指定字符编码,则可以传入参数Charset,默认采用UTF-8编码。代码如下。
fun getFileContent(filename: String): String {
val f = File(filename)
return f.readText(Charset.forName("UTF-8"))
}
如果想要获得文件的内容,则可以简单地通过split("n")来获得一个内容数组,也可以直接调用Kotlin封装好的readLines函数。
fun getFileLines(filename: String): List<String> {
return File(filename).readLines(Charset.forName("UTF-8"))
}
readLines函数返回一个持有每行内容的字符串List。如果希望直接操作文件的字节数组,则可以使用readBytes函数。代码如下。
val bytes: ByteArray = f.readBytes()
println(bytes.joinToString(separator = " "))