class MainActivity : AppCompatActivity() {
private var et: EditText? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
et = findViewById(R.id.et)
val open = open()//调用读取文件的方法
open?.let {//如果不为空则读取为空就什么都不做
et?.setText(it)
}
}
private fun save(string: String){//写入文件的方法
val openFileOutput = openFileOutput("data", MODE_PRIVATE)//MODE_PRIVATE默认的表示指定相同文件名的时候,写入的内容会覆盖原内容
//MODE_APPEND如果文件已存在,就往文件里面追加内容不存在就创建
val writer = BufferedWriter(OutputStreamWriter(openFileOutput))
writer.use {
it.write(string)
}
}
private fun open():String{//读取文件的方法
var str=StringBuilder()
val openFileInput = openFileInput("data")
val bufferedReader = BufferedReader(InputStreamReader(openFileInput))
bufferedReader.use {
bufferedReader.forEachLine {//一次读取一行
str.append(it)//赋值给str
}
}
return str.toString()//返回给上面
}
override fun onDestroy() {
super.onDestroy()
val toString = et?.text.toString()
save(toString)//销毁之前调用写入文件的方法
}
}