手机的存储空间分俩种,一种是手机自带的,另一种是SD卡,(外存)
文件保存
FileOutputStream fOutputStream =
context.openFileOutput(filename, Context.MODE_PRIVATE);
fOutputStream.write(content.getBytes());
openFileOutput()方法的第一个参数用于指定文件名称,不能包含路径分隔符"/",如果文件不存在,Android会自动创建它,创建的文件保存在/data/data/<package name>files目录
openFileOutput()方法的第二个参数用于指定操作模式,有四种模式,分别为:
Context.MODE_PRIVATE=0
Context.MODE_APPEND =32768
Context.MODE_WORLD_READABLE=1
Context.MODE_WORLD_WRITEABLE=2
文件读取
public String readFile(String filename)throws Exception{
FileInputStream input = context.openFileInput(filename);
//定义的缓冲区
byte[] bytes = new byte[1024];
int len = 0;
//写入文件到内存
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
while((len=input.read(bytes))!=-1){
//把缓冲区中 的数据从0位置开始,读取len长度,写入内存
outputStream.write(bytes,0,len);
}
byte[] data = outputStream.toByteArray();
outputStream.close();
input.close();
return new String(data);
}
文件操作模式
Context.MODE_PRIVATE,为默认操作模式,代表文件是私有数据,只能被应用本身访问,在改模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中,可以使用Context.MODE_APPEND
Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否具有权限读写该文件。
MOED_WORLD_READABLE:表示当前文件可以被其他应用读取
MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入
快速定位文件,在activity中使用this.getFilesDir()
文件在SD卡存储
android2.2之前,SD卡在/sdcard目录
android2.2和之后,SD卡在/mnt/sdcard
使用activity的openFileOutput()方法保存文件,文件是存在手机空间上,一般手机的存储空间不是很大,存放些小文件还可以,如果要存储视频等大文件,是不可行的,对于像视频这样的大文件,我们存储在SD卡
在程序中访问SD卡,需要加入权限
<!--在SD卡中创建于删除文件的权限-->
<android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<!--往SD卡中写入数据权限-->
<android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
//判断是否存在SD卡,是否可写
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
//保存
fileService.saveToSDCard(filenameString, context);
}
public void saveToSDCard(String filename,String content)throws Exception{
File file = new File(Environment.getExternalStorageDirectory(),filename);
FileOutputStream fOutputStream =
new FileOutputStream(file);
fOutputStream.write(content.getBytes());
fOutputStream.close();
}
分享到:
相关推荐
android 文件存储到sd卡中 可直接部署使用
基于FatFs文件系统的SD卡存储器设计.pdf
封装了一个 可以下载网络资源文件的类,实现了将下载的文件存储到SD卡中
android demo,sd卡文件存储和data下文件存储。
STM32F103工程实现DMA采集接收消息,并通过FATFS系统将所采集接收到的数据存储到SD卡中。
STM32F103单片机通过将串口接收到的外设传来的数据,并通过DMA传输的方式传送到SD卡中进行存储
stm32_hal库cubemax文件系统SD卡读写txt文档,封装完毕,简单txt没问题存储,hal库配置项打开即可观察
android读取sd卡中MP3文件
有一些过长的字符串,无法显示出来,比如接口返回的xml数据,json数据,格式如果出现错误,我们需要将文件完整写出来,这个是直接写入sd卡,当然也可以写在电脑硬盘上
STM32实现SD卡的fatfs文件系统,写数据生成.csv文件,可以通过网络工具通过以太网下发数据通信。
工程1: 使用STC15单片机硬件SPI读取SD卡对应地址的内容。无文件系统,可使用SD卡作为外部数据大容量存储设备。 工程2: 使用STC15单片机硬件SPI挂在fatfs文件系统,读取txt的内容。可方便得用与文件存储与读取。
FAT32文件系统您一定不会陌生,最多看到它是在windows操作系统...给单片机系统中的大容量存储器(如SD卡、CF卡、硬盘等)配以FAT32文件系统,将是非常有意义的(如创建的数据文件可以在windows等操作系统中直接读取等)
android 内部存储 sd卡app私有文件 等
sd卡修复工具是通常SD/SDHC 存储卡文件系统以普通操作系统格式化软件被格式化,这个sd卡修复工具不遵照SD存储卡规格,从而不被手机或读卡器识别,或出现SD卡的容量变小。不能存储。存储不稳定的现象。 Panasonic ...
USE stm32 to control SD
FPGA 读写SD卡音乐播放例程Verilog逻辑源码Quartus工程文件+文档说明,,FPGA型号Cyclone4E系列中的EP4CE6F17C8,Quartus版本17.1。 实验简介 在其他实验中我们已经完成了 SD 卡读写和音频模块的录音播放,本实验通过...
该资源简述如何使用单片机,将采集的AD数据存储到SD卡中,并以文档的形式显示出来
Micropython SD卡驱动文件是一种用于在Micropython环境下与SD存储卡进行交互的软件资源。它提供了一组函数和方法,可用于初始化SD卡、读取文件、写入文件、创建目录等操作,使开发者能够方便地在Micropython设备上...
史上最全SD卡开发资料包括程序和原理图SPI和SD模式及...基于FPGA和SD卡的水声信号高速采集与存储系统设计.pdf 基于FPGA的SD-SDI视频转换接口的设计.pdf 基于LPC2148的SD卡实现.PDF 基于S3C2410的SDMMC卡驱动的实现.pdf
android录制视频音频存储于sd卡并点击播放实例,使用MediaRecorder录制视频和音频实例,以列表形式显示并点击播放