Android中文件的读写
作者:LEGEND
qq:158067568
关于Android中文件的读写
文件存放位置
在Android中文件的I/O是存放在/data/data/<package
name>/file/filename目录下。
提示:Android是基于linux系统的,在linux的文件系统中不存在类似于Windows的磁盘分区现象,其是以一个正斜杠“/”开头。
Android中得到输入输出流
在Android中,对于流的操作十分简单。在Context类中有如下两个方法可以直接得到文件输入输出流:
public FileInputStream openFileInput (String name)
public FileOutputStream openFileOutput (String name, int mode)
顾名思义,通过如上方法就可以得到文件输入输出流。对于第二个方法中的mode,有如下四种模式:
Use 0 or MODE_PRIVATE( the default
operation) :用0表示默认值,只能够创建文件的应用程序访问该文件,每次文件写入为覆盖方式。
MODE_APPEND to append to an existing file: 每次文件写入为追加方式,类似于StringBuffer中的append()方法。
MODE_WORLD_READABLE :只有读权限。
MODE_WORLD_WRITEABLE :只有写权限。
提示:如果想同时得到读与写的权限,则可以在mode处通过如下方式创建:
MODE_WORLD_READABLE+ MODE_WORLD_WRITEABLE
对于SE部分的补充
FileOutputStream:
public void
write(byte[] b) throws IOException 该方法可将指定的字节数组写入文件输出流
FileInputStream:
public int read(byte[] b) throws IOException 从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。在某些输入可用之前,此方法将阻塞。
对于输出流直接使用write方法即可,可参考如下代码:
/**
* 写入数据
* @param fs
* @param content
*/
public void fileWrite(FileOutputStream fos,String content){
byte[] contentByteArray = content.getBytes();
try {
fos.write(contentByteArray);
} catch (IOException e1) {
e1.printStackTrace();
}
try {//关闭流
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
对于输入流,出于性能考虑,可先使用ByteArrayOutputStream,向内存中创建一个字符数组,当将文件读完后,在读入,参考如下代码:
/**
* 读数据
* @param fis
* @return
*/
public String fileRead(FileInputStream fis){
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = -1;
try {
while((len=(fis.read(buffer))) != -1){
baos.write(buffer,0,len);
}
} catch (IOException e) {
e.printStackTrace();
}
String result = new String(baos.toByteArray());
//System.out.println(result);
try {
baos.close();
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
return result;
}
ByteArrayOutputStream: 此类实现了一个输出流,其中的数据被写入一个 byte 数组。
public
void write(byte[] b,int off,int len) 将指定 byte 数组中从偏移量 off
开始的 len
个字节写入此 byte 数组输出流。
可参考代码:FileIO
分享到:
相关推荐
### Android文件IO操作详解 在Android开发中,文件的输入输出(IO)操作是不可或缺的一部分,它涉及到数据的存储与读取,对于应用程序的数据持久化至关重要。本文将深入解析Android中的IO操作,涵盖基本概念、常见...
总之,Android文件IO操作是应用程序开发中不可或缺的部分,理解和掌握这些知识点对于开发高效、稳定且用户友好的应用至关重要。通过合理的文件管理,不仅可以优化性能,还能确保数据的安全性和可靠性。
本文将深入探讨Android中如何利用IO流进行文件的读写操作,以及相关的示例代码。 首先,Android中的IO流主要包括字节流(Byte Stream)和字符流(Character Stream),它们都是Java IO体系的一部分。字节流处理单个...
三、Android文件流 1. Android中,由于安全和权限问题,文件操作通常需要在特定的上下文中进行,例如在Activity或Service中。使用Context的openFileInput()和openFileOutput()方法可以方便地读写内部存储的文件。 ...
总的来说,Android文件I/O涵盖了很多方面,从基础的文件操作到高级的存储策略,都需要开发者根据实际需求灵活运用。理解这些知识点,能帮助我们更好地管理和操作Android设备上的文件,提高应用的稳定性和用户体验。
在Android系统中,直接I/O(Direct IO)是一种优化数据传输效率的技术,它允许应用程序绕过操作系统的缓冲区,直接与磁盘设备进行交互。这种技术对于需要高性能、低延迟的场景,如数据库、文件系统或者媒体处理等,...
【标题】"uniapp文件选择(android)"涉及到的知识点主要集中在uniAPP框架以及Android系统的文件操作上,特别是如何在uniAPP中实现Android平台的文件选择功能。uniAPP是一个使用Vue.js开发的所有端应用的统一框架,它...
以下是一些关于Android文件IO的关键知识点: 1. **Java IO流的概念**: Java IO流分为两大类:字节流(Byte Stream)和字符流(Character Stream)。字节流处理单字节的数据,如InputStream和OutputStream是字节流...
`Android IO`在这里指的是Android中的输入/输出操作,用于处理文件、网络数据等。本篇文章将详细探讨如何利用Android的IO机制来下载并显示图片。 首先,我们需要了解Android的网络请求库,如`HttpURLConnection`、`...
通过以上方式,我们已经实现了`io.socket`在Android中的简单封装,使得在进行Socket通信时代码更加优雅,迭代开发也变得更加方便。遵循这种编程习惯,不仅可以提高代码质量,还能为团队协作带来诸多便利。
Android的文件操作都是通过流的方式进行的,即IO。Android的文件操作跟Java是一样的,文件操作分为输入流(InputStream)和输出流(OutputStream),输入流用于获取文件数据,输出流用于存储文件。 详细介绍请参考...
总的来说,Android文件系统浏览器是Android应用开发中的一个重要工具,它通过提供直观的界面和便捷的操作,帮助用户更好地管理和利用设备的存储空间。开发者在实现这一功能时,需要关注权限控制、文件操作以及用户...
在Android开发中,实现多文件下载并展示...综上所述,实现Android多文件下载并显示进度条涉及了网络请求、多线程、文件IO、数据持久化、UI更新、错误处理等多个技术点。合理的设计和实现可以提供流畅且可靠的下载体验。
在Android中,IO流主要用于文件的读写,例如保存应用程序中的数据,如用户配置、游戏进度、图片或音频文件等。以下是一些关键的IO流类及其在Android中的应用: 1. **FileInputStream** 和 **FileOutputStream**:这...
总的来说,Android文件操作涵盖了基本的Java I/O操作,以及针对移动设备特性的高级API。理解这些概念对于开发Android应用至关重要,特别是在处理数据存储和交换时。同时,对驱动程序的理解有助于优化系统的性能和...
在Android系统中,I/O(Input/Output)操作是应用程序与设备之间交换数据的基础。Android提供了多种I/O机制,使得开发者能够有效地读写文件、处理流数据以及与网络通信。以下将详细介绍Android I/O操作的相关知识点...
在Android平台上,文件...以上内容是关于Android文件上传的基本原理和步骤,实际应用中可能还需要根据业务需求进行定制化开发,如添加身份验证、权限控制等。如果你对附件中的代码有任何疑问,可以进一步研究和学习。
在Android开发中,更新文件是一项常见的任务,尤其对于那些包含大量动态内容的应用,如游戏、新闻阅读器或者在线教育应用。"android 更新文件"这个主题主要涉及到如何在Android应用程序中有效地管理和更新资源文件,...
在Android开发中,I/O(Input/Output)操作是至关重要的,它涉及到应用程序与外部存储设备如文件系统、网络或内存等之间的数据交互。本文将深入探讨如何在Android平台上进行文件的读写操作,帮助开发者理解和实践...
在Java和Android中,输入输出流(IO流)是处理数据传输的核心工具,主要分为字节流和字符流两大类。字节流处理二进制数据,如图片、音频、视频以及各种文件;而字符流则处理基于字符的数据,如文本。 1. 字节流与...