Android如何开发实现文件存储功能-创新互联

这篇文章主要讲解了Android如何开发实现文件存储功能,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

颍州网站建设公司创新互联,颍州网站设计制作,有大型网站制作公司丰富经验。已为颍州上千余家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的颍州做网站的公司定做!

这个程序只有一个Activity, Activity中只有一个Edittext。实现的功能是在Activity销毁之前将EditText的内容存储到一个文件中,在Activity创建的时候,从该文件中读取内容并写道EditText中。代码如下,在onCreate加载数据,在onDestroy中保存数据。

MainActivity.kt

package com.example.filetest

import android.content.Context
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*
import java.io.*
import java.lang.StringBuilder

class MainActivity : AppCompatActivity() {
 override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  setContentView(R.layout.activity_main)

  editText.setText(loda())
 }

 override fun onDestroy() {
  super.onDestroy()
  save(editText.text.toString())
 }

 private fun save(inputText:String){
  try {
   //此函数接收两个参数,分别是文件名和打开模式
   //函数的默认存储路径是/data/data//file
   //打开模式主要是MODE_APPEND(追加)和MODE_PRIVATE(覆盖)
   val output = openFileOutput("data", Context.MODE_PRIVATE)
   val write = BufferedWriter(OutputStreamWriter(output))
   write.use {
    it.write(inputText)
   }
  }catch (e:IOException){
   e.printStackTrace()
  }
 }

 private fun loda():String{
  val result = StringBuilder()
  try {
   val input = openFileInput("data")
   val reader = BufferedReader(InputStreamReader(input))
   reader.use {
    reader.forEachLine {
     result.append(it)
    }
   }
  }catch (e : IOException){
   e.printStackTrace()
  }
  return result.toString()
 }
}

分享名称:Android如何开发实现文件存储功能-创新互联
文章网址:http://cdiso.cn/article/dsedes.html

其他资讯