Android Internal Storage是我们存储文件的设备内存。默认情况下, 存储在内部存储器中的文件是私有文件, 只有同一应用程序可以访问该文件。无法从应用程序外部访问它们。
为了从文件读取数据或将数据写入文件, Android分别提供了**openFileInput()和openFileOutput()**方法。
当用户从设备上卸载其应用程序时, 其内部存储文件也将被删除。
写入内部存储中的文件
为了将文件写入设备的内部存储中, java.io包提供了openFileOutput()方法, 该方法返回FileOutputStream类的实例。要将数据写入文件, 请调用FileOutputStream .write()方法。
val file:String = fileName.text.toString()
val data:String = fileData.text.toString()
val fileOutputStream:FileOutputStream
try {
fileOutputStream = openFileOutput(file, Context.MODE_PRIVATE)
fileOutputStream.write(data.toByteArray())
}catch (e: Exception){
e.printStackTrace()
}
从内部存储读取文件内容
为了从设备的内部存储读取文件, java.io包提供了openFileInput()方法, 该方法返回FileInputStream类的实例。要从文件读取数据, 请调用BufferedReader()。readLine()
var fileInputStream: FileInputStream? = null
fileInputStream = openFileInput(filename)
var inputStreamReader: InputStreamReader = InputStreamReader(fileInputStream)
val bufferedReader: BufferedReader = BufferedReader(inputStreamReader)
val stringBuilder: StringBuilder = StringBuilder()
var text: String? = null
while ({ text = bufferedReader.readLine(); text }() != null) {
stringBuilder.append(text)
}
//Displaying data on EditText
fileData.setText(stringBuilder.toString()).toString()