本文实例为大家分享了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()

}

}

activity_main.xml

android:layout_width="match_parent"

android:layout_height="match_parent">

android:id="@+id/editText"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:hint="请输入一段话"/>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持云海天教程。

原文链接:https://blog.csdn.net/weixin_42708161/article/details/107574395

android实现存储,Android开发实现文件存储功能相关推荐

  1. 实现了 Android 设备之间通过 Wifi 传输文件的功能

    WifiFileTransfer 项目地址:leavesC/WifiFileTransfer 简介:实现了 Android 设备之间通过 Wifi 传输文件的功能 更多:作者   提 Bug 标签: ...

  2. 第一行代码Android个人笔记(五)——文件存储

    文章目录 一.文件存储 1.将数据写到文件中 2.从文件中读取数据 二.SharedPreferences存储 1.获取SharedPreferences对象 2.存储数据 2.读取数据 三.SQLi ...

  3. android 读取内部存储文件格式,Android中的数据储存之文件存储

    当我们在使用各种程序时,其实际上是在和各种数据打交道,当我们聊QQ,刷微博,看新闻,其实都是在和里面的数据交互 例如在聊天时发出的消息,以及在登录时输入的账号密码,其实都是瞬时数据,那什么是瞬时数据呢 ...

  4. [ Android 五种数据存储方式之二 ] —— 文件存储数据

    关于文件存储,Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的. 文件可用来存放大量数据,如文本.图片.音 ...

  5. Android——数据存储(课堂代码整理:SharedPreferences存储和手机内部文件存储)...

    layout文件: 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmln ...

  6. android qq存储方式,android(5)(模拟QQ登录,文件存储,SD卡存储,SharedPreferences存储)...

    模拟QQ登录(记录账号和密码): 1.文件存储到文件中: /** * 文件存储 *@author Administrator * */ public class Utils { /** * 保存用户信 ...

  7. Android | 教你如何开发一键银行卡绑定功能

    目录 前言 银行卡识别的应用场景 如何使用华为银行卡识别服务 集成银行卡识别服务关键流程 开发实战 1 开发准备 1.1 在项目级gradle里添加华为maven仓 1.2 在应用级的build.gr ...

  8. linux sd卡中文件多时读写,数据存储与访问之——文件存储读写

    1.Android文件的操作模式 在java中要想对文件做读写操作,只需创建 文件,读写数据即可,Android却是不同,android基于Linux,在读写文件的时候,还需要加上文件的操作模式. 文 ...

  9. Android 11.0 蓝牙去掉传输文件的功能

    1.概述 在11.0的系统产品开发中,对于蓝牙的管控也是常有的功能,比如禁止连接蓝牙,禁止蓝牙传输文件等功能,最近有产品功能需求,要求禁止蓝牙传输文件,这就要从蓝牙文件传输流程分析,然后禁用传输功能就 ...

最新文章

  1. MySQL分布式集群
  2. Pandas 操作 csv 文件
  3. 在数据仓储的情况下进一步封装数据库基础操作,此版本为异步版本
  4. 前端学习(2682):重读vue电商网站2之前台启动
  5. java面试没有全部答对_十道java基础面试题,你能保证全答对吗?
  6. python 3.9.0a0_Python 3.9.0 稳定版发布
  7. 使用go的ssh包快速打造一个本地命令行ssh客户端
  8. Java安全 – JCE (Blowfish算法报错)
  9. SAP License:MM模块审批策略问题
  10. Codeforces Round #379 (Div. 2) E. Anton and Tree —— 缩点 + 树上最长路
  11. 一个软件完整的开发流程介绍
  12. PDF文档怎么修改内容,怎么把PDF文件拆分
  13. 利用Openlayers4实现地图遮罩效果(三)
  14. 0.96OLED图标取模,包括信号图标,蓝牙图标,闹钟,电池
  15. IOS7越狱后无法开机,白苹果恢复固件
  16. 买股票也要会买跌,股票不是只有涨的时候才能买的
  17. building workspace js validation
  18. Linux 命令学习_无名小仙男
  19. Simulink仿真入门到精通(五) Simulink模型的仿真
  20. 基于canal根据配置实现数据库数据的同步

热门文章

  1. 关于java中Scanner的next和nextLine
  2. 随机发牌_用Python制作4人扑克牌发牌游戏
  3. 南京信息工程大学c语言真题,南京信息工程大学C语言试题库.doc
  4. Java黑皮书课后题第7章:**7.19(是否排好序了?)编写以下方法,如果参数中的list数组已经排好序了则返回true。编写一个测试程序,提示用户输入一个列表,显示该列表是否已经排好序
  5. Java黑皮书课后题第4章:*4.17(一个月的天数)编写一个程序,提示用户输入一个年份和一个月份名称的前3个字母(第一个字母使用大写形式),显示该月中的天数。如果月份非法则显示出错信息
  6. 黑客数字雨html单页,Hei客帝国数字雨.html
  7. Halcon - 定位 - 卡尺
  8. 自学it18大数据笔记-第三阶段Scala-day06——会持续更新……
  9. 删除矩阵中的任意一列元素
  10. 二分查找法、顺序查找法