[size=small][/size][color=olive][b]File类读写文件 :
如果需要在程序中使用sdcard进行数据的存储,那么需要在AndroidMainfset.xml文件中
进行权限的配置:
<!-- 在sd中创建和删除文件的权限 -->
<uses-permission
android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<!-- 向SD卡中的写入权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
小贴士:
在对SD卡进行读写的时候会用到的知识点:
Environment类的静态方法:
* getDataDirectory(); 获取android中的data目录;
* getExternalStorgeDirectory(); 获取到外部存储的目录一般指SD卡;
* getDownloadCacheDirectory(); 获取到下载的缓存目录;
* getExternalStorageState(); 获取外部设置的当前状态,sd卡
android对于外部的设置状态,我们比较常用的应该是MEDIA_MOUNTED(sd卡存在并且可以进行
读写 )
* getRootDirectory(); 获取到Android Root路径;
* isExternalStorageEmulated(); 返回Boolean值判断外部设置是否有效;
* isExternalStorageRemovable(); 判断外部设置是否可以移除;
Android中外部设置的状态情况如下:
* MEDIA_MOUNTED sd卡中可以进行读写;
* MEDIA_MOUNTED_READ_ONLY sd卡 存在,只可以进行读的操作
.......................................................[/b][/color]
案例:效果实现,点击实现将数据写入到SD卡中,代码如下:
java代码:
/* 将文件数据写入sdcard中,保存数据 */
public void writeDataToSD(){
try{
/* 获取File对象,确定数据文件的信息 */
//File file = new File(Environment.getExternalStorageDirectory()+"/f.txt");
File file = new File(Environment.getExternalStorageDirectory(),"f.txt");
/* 判断sd的外部设置状态是否可以读写 */
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
/* 流的对象 *//* */
FileOutputStream fos = new FileOutputStream(file);
/* 需要写入的数据 */
String message = "天气不是很好";
/* 将字符串转换成字节数组 */
byte[] buffer = message.getBytes();
/* 开始写入数据 */
fos.write(buffer);
/* 关闭流的使用 */
fos.close();
Toast.makeText(MainActivity.this, "文件写入成功", 1000).show();
}
}catch(Exception ex){
Toast.makeText(MainActivity.this, "文件写入失败", 1000).show();
}
}
读取SD卡中的文件:
/* 读取数据 */
public void readDataFromSD(){
try{
/* 创建File对象,确定需要读取文件的信息 */
File file = new File(Environment.getExternalStorageDirectory(),"f.txt");
/* FileInputSteam 输入流的对象, */
FileInputStream fis = new FileInputStream(file);
/* 准备一个字节数组用户装即将读取的数据 */
byte[] buffer = new byte[fis.available()];
/* 开始进行文件的读取 */
fis.read(buffer);
/* 关闭流 */
fis.close();
/* 将字节数组转换成字符创, 并转换编码的格式 */
String res = EncodingUtils.getString(buffer, "UTF-8");
Toast.makeText(MainActivity.this, "文件读取成功,您读取的数据为:"+res, 1000).show();
}catch(Exception ex){
Toast.makeText(MainActivity.this, "文件读取失败!", 1000).show();
}
}
分享到:
相关推荐
1. **文件系统访问**:Android设备上的外部存储(通常称为SD卡)被模拟为一个文件系统,可以使用Java的`java.io.File`类来操作。首先,你需要获取SD卡的根目录路径,通常是`Environment.getExternalStorageDirectory...
在Android系统中,读取和存储SD卡是应用程序与外部存储交互的重要部分,尤其是在处理大量数据或者需要离线可用内容时。本示例项目“StorageManageDemo”将帮助开发者了解如何在Android应用中有效地实现这一功能。...
在Android平台上,从SD卡(外部存储)读取数据是一项常见的任务,特别是在处理大量媒体文件或者需要离线存储用户数据的应用中。本文将详细介绍如何在Android应用中实现从SD卡读取文件,并提供一个可直接部署使用的...
在Android开发中,有时我们需要将应用内部的RAW资源文件复制到外部存储(如SD卡)以便于用户访问或保存数据。这个"Android之将RAW资源文件写入SD卡工具类"是一个实用的功能,可以帮助开发者轻松完成这个任务。下面将...
在Android平台上,将文件存储到SD卡中是应用程序常见的需求之一。这主要涉及到Android的文件系统、权限管理以及外部存储的使用。以下是一些关于如何在Android中存储文件到SD卡的关键知识点: 1. **Android文件系统*...
这篇博客“Android 读取SD卡中文件以及内存使用情况”详细介绍了如何在Android应用中读取SD卡上的文件以及监控内存使用状态。这篇文章将对这些关键知识点进行深入探讨。 首先,Android系统的外部存储提供了一个用于...
在使用SD卡存储时,需要注意权限问题。自Android 6.0(API级别23)以来,应用需要在运行时请求`WRITE_EXTERNAL_STORAGE`和`READ_EXTERNAL_STORAGE`权限。 **2. data下文件存储** 内部data目录下的文件存储主要用于...
在本篇中,我们将深入探讨如何在Android设备的SD卡上创建一个TXT文件,向这个文件写入内容,以及如何读取这些内容。首先,我们需要了解Android对文件访问的权限管理和存储路径。 1. **权限管理**: 在Android 6.0...
接着,我们可以遍历SD卡上的特定目录,如`/Music`,使用`File`类的方法如`listFiles()`来获取所有文件。对于每个文件,我们需要判断其是否为音频文件,这通常通过检查文件扩展名(如.mp3、.aac等)或者使用`...
在Android平台上,遍历SD卡中的视频文件是开发视频播放器等应用的常见需求。这个过程涉及到了文件系统的操作、多媒体信息的获取以及性能优化等多个方面。以下将详细讲解这个主题。 首先,Android系统提供了`java.io...
本篇文章将深入探讨如何在Android应用中读取U盘或SD卡(外部存储)上的所有`.txt`文件。首先,我们需要了解Android对文件访问的权限管理和存储路径。 1. **权限管理**: 自Android 6.0(API级别23)起,系统引入了...
在Android系统中,SD卡(Secure Digital Card)是设备存储扩展和数据交换的重要媒介,它为应用程序提供了额外的存储空间,以保存用户数据、媒体文件或其他应用相关资源。本篇文章将详细探讨Android平台上SD卡的文件...
在Android系统中,管理和操作文件,尤其是涉及到SD卡(外置和内置存储卡)的文件操作,是开发者经常面临的一项任务。这篇资料主要探讨的是如何在Android应用中获取SD卡的路径以及计算其存储大小。以下是一些关键知识...
在Android系统中,外部存储设备通常被称为SD卡(尽管现代设备可能不使用物理SD卡,但这个术语仍被沿用),它是用户存储大量数据如图片、音频、视频和文本文件的理想位置。本教程将深入讲解如何在Android应用中读取SD...
在Android系统中,由于安全性和性能的考虑,应用程序通常不能直接访问内部存储空间,而是需要通过特定的方法来读写外部存储,也就是我们常说的SD卡(实际上现在多为内置存储)。本教程主要介绍如何在Android应用中...
在Android平台上,SD卡文件浏览器是一款实用的应用程序,它允许用户查看和管理存储在设备SD卡上的文件和文件夹。这个应用通常具有直观的界面,采用列表视图展示SD卡内容,便于用户浏览、选择、复制、移动或删除文件...
这个“android中读取本地文件demo”提供了一个示例,演示了如何读取存储在SD卡上的Word和PDF文件,并将它们的内容呈现在ListView中。用户不仅可以浏览文件列表,还能进行搜索,快速找到并打开感兴趣的文件。以下是对...
在Android开发中,SD卡(Secure Digital Card)的使用是一个重要的环节,特别是在处理大量数据、媒体文件或扩展应用程序存储时。本项目源码提供了一种实际应用中的示例,帮助开发者理解和掌握Android如何与外部存储...
本篇文章将主要探讨Android中的内部存储与外部存储之一——SD卡存储的基本概念、特点及其使用方法。 #### 二、Android内部存储 Android内部存储指的是应用自身的私有存储空间,通常位于`/data/data/<package name>...
Android为开发者提供了丰富的API,以便在设备上处理各种文件操作,包括读取、写入、删除、移动和复制文件,以及与SD卡(外部存储)的交互。下面我们将深入探讨这些关键知识点。 一、Android文件操作基础 1. 文件...