数据存储
2023-07-13 本文已影响0人
jancywen
文件存储
默认存储到/data/data/<package name>/files/ 目录下
openFileOutput()
- 第一个参数是文件名,
- 第二个参数操作模式 默认MODE_PRIVATE,存在相同文件名,覆盖;MODE_APPEND在后面追加
// 写
fun save(inputText: String) {
try {
val output = openFileOutput("data", Context.MODE_PRIVATE)
val writer = BufferedWriter(OutputStreamWriter(output))
writer.use {
it.write(inputText)
}
} catch (e: IOException) {
e.printStackTrace()
}
}
//读
fun read(): String {
val content = StringBuilder()
try {
val input = openFileInput("data")
val reader = BufferedReader(InputStreamReader(input))
reader.use {
reader.forEachLine {
content.append(it)
}
}
} catch (e: IOException) {
e.printStackTrace()
}
return content.toString()
}
SharedPreferences 存储
SharedPreferences 文件都是存放在/data/data/<packagename>/shared_prefs/ 目录下的
- 调用SharedPreferences对象的edit()方法获取一个 SharedPreferences.Editor对象。
- 向SharedPreferences.Editor对象中添加数据,比如 putBoolean()、putString()
- 调用apply()方法将添加的数据提交,从而完成数据存储操作。
- 读取数据 getString()、getInt()