剛開始照搬java就出坑了....發現讀取的數據不全等問題
然後 就 總結了幾種 kotlin的讀取方法
示例:
private fun load() {
var fileInputStream = openFileInput("data")
//把文件內容讀取進緩衝讀取器(use方法會自動對BufferedReader進行關閉)
BufferedReader(InputStreamReader(fileInputStream)).use {
var line: String
while (true) {
line = it.readLine() ?: break //當有內容時讀取一行數據,否則退出循環
println(line) //打印一行數據 } }
}
}
}
注意事項:
kotlin讀取文件有多種方法,但是讀取本地/data/data/.../files裏的文件,必須要用fileInputStream
要不會出現Permission Denie錯誤.
那麼kotlin讀取文件有什麼方法呢?一種是上面的方法,其次
第一種
fun main(args: Array<String>) {
val file = File("build.gradle") //新建文件讀取build.gradle的內容
//把文件內容讀取進緩衝讀取器
val bufferedReader = BufferedReader(FileReader(file))
var line: String while (true) {
//當有內容時讀取一行數據,否則退出循環
line = bufferedReader.readLine() ?: break
println(line) //打印一行數據
}
bufferedReader.close() //關閉緩衝讀取器
}
第二種
fun main(args: Array<String>) {
//最簡單打印文件內容的方法,readLines()方法可讀取文件內容
File("build.gradle").readLines().forEach(::println)
}
以上爲讀取本地文件的方法
重點
當你想讀取assets文件夾下內容就醬紫咯...
val input = Context.assets.open(fileName) //傳入文件名稱 讀取assets文件