Android 文件操作方法
发布时间:2023-06-02 12:51:17
数据存储与访问常用方式:
文件
SharedPreferences(偏好参数设置)
SQLite数据库
内容提供者(Content provider)
网络
Activity(Context)
Context.getCacheDir()方法用于获取/data/data/<package name>/cache目录
Context.getFilesDir()方法用于获取/data/data/<package name>/files目录
Activity(Context)提供了openFileOutput(filename,mode)方法用于把数据输出到文件中;
第一个参数用于指定文件名称,不能包含路径分隔符‘/'
第二个参数为操作模式:
Context.MODE_PRIVATE:私有操作模式创建出来的文件只能被本程序访问,如果文件不存在,会自动创建,另外:写入文件中的内容会覆盖原文件的内容;
Context.MODE_APPEND:模式会检查文件是否存在,如果存在则会追加内容,否则创建新文件;
Context.MODE_READABLE:表示当前文件可以被其它应用读取;
Context.MODE_WRITEABLE:表示当前文件可以被其它应用写入;
如果希望文件被其它应用读和写:传入(Context.MODE_READABLE+Context.MODE_WRITEABLE)
FileOutputStream outStream = context.openFileOutput(filename,Context.MODE_PRIVATE);
//param 文件名称,操作方式
android有一套自己的安全模型,当应用程序(.apk)在安装时系统会分配给一个userid,当该应用去访问其它资源如文件的时候,会进行 userid的匹配,默认情况下任何应用创建的文件,sharedpreferences,数据库都是私有的(创建的文件保存在/data/data /<package name>/files目录下),只有指定操作模式为外部可读或写才可以被其它程序访问;
读取文件:
<1>
FileInputStream inStream = context.openFileInput(filename);
Log.i(TAG,inStream....)
<2>
path="/data/data/<package name>/files/hello.txt";
File file = new File(path);
FileInputStream inStream = new FileInputStream(file);
Log.i(TAG,inStream....)
ctrl + shift + x/y 大小写
猜你喜欢
- 一、特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对
- 前言Android的编辑框控件EditText在平常编程时会经常用到,有时候会对编辑框增加某些限制,如限制只能输入数字,最大输入的文字个数,
- java 中HashCode重复的可能性今天有同事提议用String的hashcode得到int类型作为主键。其实hashcode重复的可能
- 反阈值二值化反阈值二值化与阈值二值化互为逆操作。在OpenCV中该类的实现依赖于threshold() 函数。下面是该函数的声明:thres
- 在android中常用存储数据的基本就三种,sqlite,SharedPreferences,文件存储,其中针对于对象存储,使用sqlite
- java 并发线程个数的确定本文从控制变量的角度来谈决定线程个数的依据。模型很简单,在实际的生产环境中,情况肯定比下文要复杂的多。要充分的进
- 前言做APP应用开发的时候,用户头像肯定是必不可少的,但是90%以上的需求头像都是圆形的。那么,如何通过自定义View的方式实现圆形头像呢,
- 这篇文章主要介绍了Java Collection集合iterator方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的
- 本文实例讲述了C#检测上传文件真正类型的方法。分享给大家供大家参考。具体分析如下:对于用户上传的文件如果只是根据扩展名判断,很容易上传上来可
- springboot生成bean名称冲突问题描述我们再使用springboot的时候,在不同的文件目录下,可能存在相同名称的java类,这个
- 本文实例讲述了C#实现利用Windows API读写INI文件的方法。分享给大家供大家参考。具体如下:写入时,如果没有INI文件,自动创建I
- 本文实例讲述了C#使用XML序列化操作菜单的方法。分享给大家供大家参考。具体分析如下:之前的一篇文章《C#递归读取XML菜单数据的方法》没使
- application.properties大家都不陌生,我们在开发的时候,经常使用它来配置一些可以手动修改而且不用编译的变量,这样的作用在
- 本文介绍如何在springboot中使用默认的spring cache,声明式缓存Spring 定义 CacheManager 和 Cach
- 核心配置文件mybatis-config.xml 系统核心配置文件MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属
- 1、添加maven依赖<dependency>  
- Java List转换成String数组实现代码:List<String> list = new ArrayList<St
- SpringMVC异常处理机制(一)项目前准备首先参照文章Spring课程工程构建+SpringMVC简介及其快速入门搭建项目搭建好一个项目
- 一般在web应用中,对客户端提交上来的图片肯定需要进行压缩的。尤其是比较大的图片,如果不经过压缩会导致页面变的很大,打开速度比较慢,当然了如
- 用Scanner输入,用PrintStream输出功能:从in.txt读入,输出到out.txt代码:和下面的一样package ioTes