Android数据持久化之File机制分析

发布时间 - 2026-01-11 00:55:46    点击率:

本文实例讲述了Android数据持久化之File机制。分享给大家供大家参考,具体如下:

在使用Java SE平台开发C/S结构的软件中,File 的IO输入输出流的使用率是非常高的,通过使用IO输入输出流可以对存储介质上的文件进行读写操作,下面的代码就是实现一个在Android平台上使用File对象操作文件的功能:

package com.example.data_file;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
@SuppressLint("SdCardPath")
public class MainActivity extends Activity {
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    try {
      File file = new File("/data/data/com.example.data_file/file.txt");
      Log.v("path=", file.getAbsolutePath());
      file.createNewFile();
      FileOutputStream fos = new FileOutputStream(file);
      fos.write("乌拉啦啦啦".getBytes());
      fos.close();
      FileInputStream fis = new FileInputStream(file);
      InputStreamReader isReader = new InputStreamReader(fis);
      char[] charArray = new char[2];
      int readLength = isReader.read(charArray);
      StringBuffer sb = new StringBuffer();
      while(readLength != -1)
      {
        sb.append(charArray, 0, readLength);
        readLength = isReader.read(charArray);
      }
      Log.v("file.txt文件内容是:", sb.toString());
      fis.close();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }
  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
  }
}

注意:Linux系统下对权限的要求比较高,不允许随便存储文件,所以存储文件的路径为:/data/data/<包名>/Files/<文件名>

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android文件操作技巧汇总》、《Android数据库操作技巧总结》、《Android编程之activity操作技巧总结》、《Android编程开发之SD卡操作方法汇总》、《Android开发入门与进阶教程》、《Android资源操作技巧汇总》、《Android视图View技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。


# Android  # 数据持久化  # File  # Android startActivityForResult实例详解  # Android在Fragment中实现监听触摸事件  # Android 使用FragmentTabhost代替Tabhost  # Android数据持久化之Preferences机制详解  # Android 如何本地加载pdf文件  # Android利用FlexboxLayout轻松实现流动布局  # android手机端与PC端使用adb forword通信  # Android 中SwipeRefreshLayout与ViewPager滑动事件冲突解决方法  # Android 7.0行为变更 FileUriExposedException解决方法  # 操作技巧  # 乌拉  # 进阶  # 相关内容  # 较高  # 感兴趣  # 给大家  # 更多关于  # 以对  # 所述  # 程序设计  # 啦啦  # 操作方法  # 编程开发  # 讲述了  # 存储介质  # 平台上  # view  # public  # SdCardPath 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何实现用户密码重置功能?(完整流程代码)  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  如何在万网自助建站平台快速创建网站?  如何在IIS7中新建站点?详细步骤解析  Laravel API资源类怎么用_Laravel API Resource数据转换  无锡营销型网站制作公司,无锡网选车牌流程?  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  如何快速生成可下载的建站源码工具?  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  在线教育网站制作平台,山西立德教育官网?  ,南京靠谱的征婚网站?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  如何快速搭建自助建站会员专属系统?  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  Python制作简易注册登录系统  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  Bootstrap CSS布局之列表  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  如何在IIS中新建站点并解决端口绑定冲突?  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  如何用y主机助手快速搭建网站?  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  如何彻底删除建站之星生成的Banner?  Bootstrap整体框架之JavaScript插件架构  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  Java遍历集合的三种方式  想要更高端的建设网站,这些原则一定要坚持!  Laravel如何使用Eloquent进行子查询  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  Python文件异常处理策略_健壮性说明【指导】  javascript基于原型链的继承及call和apply函数用法分析  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  Linux后台任务运行方法_nohup与&使用技巧【技巧】  EditPlus中的正则表达式实战(6)  如何获取上海专业网站定制建站电话?