Android 文件读写
来源:互联网 发布:wtaps15aw裤数据 编辑:程序博客网 时间:2024/06/14 07:42
Android 文件读写
学过Java的同学都知道,我们新建文件,然后就可以写入数据了,但是Android却不一样,因为Android是基于Linux的,我们在读写文件的时候,还需加上文件的操作模式,Android中的操作模式如下:
1、文件操作模式
2、文件常用方法
3、文件工具类
public class FileHelper { private Context mContext; public FileHelper() { } public FileHelper(Context mContext) { super(); this.mContext = mContext; } /* * 这里定义的是一个文件保存的方法,写入到文件中,所以是输出流 * */ public void save(String filename, String filecontent) throws Exception { //这里我们使用私有模式,创建出来的文件只能被本应用访问,还会覆盖原文件哦 FileOutputStream output = mContext.openFileOutput(filename, Context.MODE_PRIVATE); output.write(filecontent.getBytes()); //将String字符串以字节流的形式写入到输出流中 output.close(); //关闭输出流 } /* * 这里定义的是文件读取的方法 * */ public String read(String filename) throws IOException { //打开文件输入流 FileInputStream input = mContext.openFileInput(filename); byte[] temp = new byte[1024]; StringBuilder sb = new StringBuilder(""); int len = 0; //读取文件内容: while ((len = input.read(temp)) > 0) { sb.append(new String(temp, 0, len)); } //关闭输入流 input.close(); return sb.toString(); }}
4.读取SD卡上的文件
public class SDFileHelper { private Context context; public SDFileHelper() { } public SDFileHelper(Context context) { super(); this.context = context; } //往SD卡写入文件的方法 public void savaFileToSD(String filename, String filecontent) throws Exception { //如果手机已插入sd卡,且app具有读写sd卡的权限 if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { filename = Environment.getExternalStorageDirectory().getCanonicalPath() + "/" + filename; //这里就不要用openFileOutput了,那个是往手机内存中写数据的 FileOutputStream output = new FileOutputStream(filename); output.write(filecontent.getBytes()); //将String字符串以字节流的形式写入到输出流中 output.close(); //关闭输出流 } else Toast.makeText(context, "SD卡不存在或者不可读写", Toast.LENGTH_SHORT).show(); } //读取SD卡中文件的方法 //定义读取文件的方法: public String readFromSD(String filename) throws IOException { StringBuilder sb = new StringBuilder(""); if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { filename = Environment.getExternalStorageDirectory().getCanonicalPath() + "/" + filename; //打开文件输入流 FileInputStream input = new FileInputStream(filename); byte[] temp = new byte[1024]; int len = 0; //读取文件内容: while ((len = input.read(temp)) > 0) { sb.append(new String(temp, 0, len)); } //关闭输入流 input.close(); } return sb.toString(); }}
最后别忘记在AndroidManifest.xml写上读写SD卡的权限哦!
<!-- 在SDCard中创建与删除文件权限 --><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/><!-- 往SDCard写入数据权限 --><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
0 0
- 【android】:android文件读写
- android文件读写,ndk文件读写
- Android下 读写文件
- android 读写文件
- Android文件的读写
- Android 文件读写
- android 读写文件
- Android读写文件
- Android下读写文件
- Android文件的读写
- Android读写文件
- android读写文件
- Android读写文件
- android读写文件
- Android读写文件
- Android 文件读写
- Android中读写文件
- android中读写文件
- Mfc子窗口修改Static Text控件的字体、大小、颜色
- 习题3-1 得分(Score, ACM/ICPC Seoul 2005, UVa 1585)
- javascript中的String
- Hibernate与 MyBatis的比较
- centos最小化安装后推荐安装的软件包
- Android 文件读写
- ”我的2016“-太多难忘的第一次
- 字符串分割
- tomcat学习(1)
- 点在直线的投影坐标 n维向量投影坐标 几何投影坐标
- WAMP80端口被占用快速解决
- java编程思想查漏补缺(一)
- A1044. Fibonacci数列求和
- 面试题:多对多的关系