一、把文件存储到该应用下
在我们实际的开发中,很多的时候都需要对数据进行存储和读写,下面是我们常用的保存文件和读取文件的方法:
1、首先我们准备这样的一个布局()
1、Xml文件的代码为:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity"
android:layout_margin="10dp" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/text_name"/>
<EditText
android:id="@+id/file_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/file_context"/>
<EditText
android:id="@+id/file_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minLines="3"/>
<Button
android:id="@+id/save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/save_btn"/>
<EditText
android:id="@+id/file_name1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="请输入需要读取的文件名"
/>
<Button
android:id="@+id/read"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="读取文件"/>
<EditText
android:id="@+id/file_con"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minLines="3"
/>
</LinearLayout>
2、在java代码中把各个控件找到:
3、在按钮监听中对数据进行存储到文件当中
a、获取文件用户输入框里的文件名和需要存储的内容
b、创建一个保存数据的对象
c、调用保存数据对象类中保存文件的方法
4、在新建的SaveService类中创建保存数据的方法
这里有一个地方需要注意的是(图中用红笔标出的参数)
a、Context.MODE_PRIVATE 为系统的默认操作模式,表示文件只能被应用本身所使用,别的应用不能使用;在该模式下新写入的内容会会覆盖旧的内容,因此需要把新写入的内容追加到到原文件当中不能用这个方法。
b、Context.MODE_APPEND 这中方法就是专门为上一种方法存在的缺点而生的,该模式会检验文件是不是存在,如果文件存在则往文件追加新写入的内容,如果文件不存在,则创建新文件
c、Context.MODE_WORLD_READABLE 这种操作模式表示文件能够被其他应读取
d、Context.MODE_WORLD_WRITEABLE 这种操作模式表示文件能被其他应用写入
我们可以根据我们项目的实际需求选取响应操作模式。
5、文件保存到的地方
然后再第二个data下面找到你项目所对应的包名就能找到你所存储的数据了
这样就能轻松地把数据存储到文件当中了
上面介绍了数据存储的方法,有存储就肯定也有数据的读取
数据的读取也是很简单:
1、在activity那边的代码为:
2、在SaveService中的读取文件的方法为:
文件的读取需要一点小小的技巧,我们读出来的是直接用文件输入流读出来的是字节数组,这样我们可以借助io包里面的内存流来进行对数据的暂时保存,然后再从内存流中吧数据取出来,具体代码如上图。
二、把文件存储到SDcard
上面我们介绍了了其中一种把数据存储到应用当中去,但这种存储的方式是存在一定的局限性,当我们需要存储的文件比较大(比如:视频)的时候就不能采用上面的这一种存储方式了,但我们可以把文件存储到SDcard当中。那么又是如何把文件存储到SDcard当中的呢?下面我分享一下:
步骤一:在activity中的代码
步骤二:在SaveService 类中的把数据存储到SDcard中的文件当中的方法为
这里有个小的细节就是我对文件目录书写的技巧,我们可以直接把SDcard的路径写上,如:”/mnt/sdcard”,但这样的写法随着版本的更新可能会导致版本兼容的问题,所以一般不采用这种方法,而是直接用Environment提供的getExternalStorageDirectory()方法来获得sdcard的目录。
步骤三:添加权限,因为这些方法已经涉及到文件的读写,所以要添加一些权限,权限的具体意义看下图的注释
这样把上面的三个步骤完成就能把数据写入到sdcard当中去了。
那么我们储存的文件是在哪里呢?
- 大小: 14.8 KB
- 大小: 22.5 KB
- 大小: 31.1 KB
- 大小: 39.2 KB
- 大小: 19.6 KB
- 大小: 45.8 KB
- 大小: 19.9 KB
- 大小: 19 KB
- 大小: 33.9 KB
- 大小: 35.1 KB
- 大小: 31 KB
- 大小: 13.8 KB
- 大小: 58.5 KB
分享到:
相关推荐
在Android系统中,文件存储是应用开发中必不可少的一部分。它涉及到如何有效地管理应用程序的数据,包括保存用户设置、缓存图片、记录日志等。本文将深入探讨Android中的文件存储机制,包括内部存储、外部存储、...
在Android系统中,文件存储是应用开发中必不可少的一部分。它涉及到如何有效地管理应用程序的数据,包括保存用户设置、缓存文件、数据库记录等。本资源"android文件存储源码及笔记"提供了一个名为`SDCardHelper`的...
本主题将深入探讨安卓文件存储读写的各个方面,包括本地存储的选择、权限管理、文件操作API以及最佳实践。 1. **存储区域选择** 安卓提供了多种存储方式,包括内部存储、外部存储(SD卡)和外部存储公共目录。内部...
- Android提供了多种数据存储方式,如SharedPreferences、SQLite数据库、文件存储、ContentProvider以及网络存储等。在这个案例中,我们主要关注的是文件内部存储,适合于存储小量的非结构化数据。 2. **文件内部...
android 介绍使用文件如何对数据进行存储
本文将深入探讨Android系统中的文件存储机制,包括如何读取、写入、重写和删除.txt格式的文件。理解这些知识点对于任何Android开发者来说都极其必要。 一、Android文件存储基础 Android提供了多种本地数据存储方式...
首先,我们要理解Android的文件存储机制。Android提供了多种存储方式,包括内部存储、外部存储、SQLite数据库和SharedPreferences。在`FilePersistenceTest`项目中,我们将重点探讨内部存储和外部存储的使用。 1. *...
**Android-sklad:Android文件存储库加密与流媒体支持** `Android-sklad` 是一个专门为Android平台设计的文件存储库,它提供了强大的文件管理功能,包括加密和流媒体支持。这个开源库旨在帮助开发者更高效、安全地...
在这个名为"FilePersistenceTest"的项目中,我们将探讨如何使用SharedPreferences来实现安卓文件存储。 SharedPreferences的工作原理是基于XML文件,这些文件存储在设备的内部存储区域,通常是`/data/data/包名/...
在Android系统中,文件存储是应用程序管理数据的重要方式之一。Android提供了多种文件存储机制,以满足不同场景下数据持久化的需要。以下是对Android文件存储的详细解析: 1. **内部存储** - 内部存储是Android...
在Android系统中,传统的文件存储方式通常需要应用获取相应的文件读写权限,以便在外部存储(如SD卡)上保存和访问数据。然而,随着Android系统的更新,特别是自Android 6.0(Marshmallow)引入运行时权限管理以来,...
本教程将详细介绍Android中的三种主要数据存储方式:SharedPreferences存储、内部文件存储以及数据库存储。 1. SharedPreferences存储 SharedPreferences是Android提供的一种轻量级的数据存储方式,用于保存应用...
本文将深入探讨Android安卓文件管理器的相关知识点,包括其功能、操作方式以及如何优化文件管理体验。 1. 文件管理器的基本功能: - 浏览:文件管理器可以浏览设备内部存储、外部SD卡(如果支持)、下载目录以及...
要理解Android的文件存储,首先要明白Android是如何用什么方式获取和存入数据的。Android的文件操作都是通过流的方式进行的,即IO。Android的文件操作跟Java是一样的,文件操作分为输入流(InputStream)和输出流...
压缩包中的`FileStorage`可能包含用于演示或分析Android文件存储的代码。这个文件可能涵盖如何创建、读取、写入和管理Android设备上的文件,以及如何处理存储权限的示例。 通过理解这些概念和实践,开发者可以更好...
其中,SDCard是Android设备用于扩展存储空间的外部存储区域,通常用来存放用户数据和应用文件。 Android文件系统浏览器的首要任务是提供一个图形化的界面,使用户能够查看和管理SDCard上的文件和文件夹。这包括浏览...
"Android存储字符串数据到txt文件" Android存储字符串数据到txt文件是Android开发中的一种常见需求,对于大多数开发者来说,存储字符串数据到txt文件是一种非常有用的功能。今天,我们将详细介绍如何在Android中...
在Android系统中,文件存储是应用开发中必不可少的一部分。Android为开发者提供了多种文件存储方式,以适应不同的需求,包括内部存储和外部存储(通常指SDCard)。这两种存储方式各有特点,适用场景不同,下面我们将...
`DocumentFile`允许你遍历文件系统并进行读写操作,而SAF是Android提供的用于访问存储的框架,它提供了安全且统一的方式来访问用户存储的数据。 2. 多选与单选:在文件选择器中,多选功能可以通过设置复选框或者...