文件存储是Android中的一种基本存储方式,Context类中提供了一个openFileOutput()方法,可以将数据存储到指定的文件中。
这个方法接收两个参数,第一个参数是文件名;第二个参数是文件的操作模式主要有MODE_PRIVATE(默认的模式,如果指定相同的文件名将会覆盖原文件)和MODE_APPEND(如果文件存在就往文件后面追加内容)
/**
* 存储
*/
fun saveData() {
var data = "Data to save"
var out: FileOutputStream
var writer: BufferedWriter? = null
try {
out = openFileOutput("data", Context.MODE_PRIVATE)
writer = BufferedWriter(OutputStreamWriter(out))
writer.write(data)
} catch (e: Exception) {
} finally {
try {
if (writer != null) {
writer.close()
}
} catch (e: Exception) {
}
}
}
/** * 读取数据 */ fun loadData():String? { var ins: FileInputStream? = null var reader: BufferedReader? = null var content = StringBuffer() try { ins = openFileInput("data") reader = BufferedReader(InputStreamReader(ins)) var line = reader.readLine() while (line!= null) { content.append(line) line= reader.readLine() } } catch (e: Exception) { } finally { try { if (reader!=null){ reader.close() } }catch (e:Exception){ } } return content.toString() }
参考资料:第一行代码(第二版)