安卓文件写入与读取
2016-03-21 22:46
295 查看
读写/data/data/<应用程序名>目录上的文件:
//写数据 public void writeFile(String fileName,String writestr) throws IOException{ try{ FileOutputStream fout =openFileOutput(fileName, MODE_PRIVATE); byte [] bytes = writestr.getBytes(); fout.write(bytes); fout.close(); } catch(Exception e){ e.printStackTrace(); } } //读数据 public String readFile(String fileName) throws IOException{ String res=""; try{ FileInputStream fin = openFileInput(fileName); int length = fin.available(); byte [] buffer = new byte[length]; fin.read(buffer); res = EncodingUtils.getString(buffer, "UTF-8"); fin.close(); } catch(Exception e){ e.printStackTrace(); } return res; }
从resource的asset中读取文件数据
String fileName = "test.txt"; //文件名字 String res=""; try{ //得到资源中的asset数据流 InputStream in = getResources().getAssets().open(fileName); int length = in.available(); byte [] buffer = new byte[length]; in.read(buffer); in.close(); res = EncodingUtils.getString(buffer, "UTF-8"); }catch(Exception e){ e.printStackTrace(); }
从resource的raw中读取文件数据
String res = ""; try{ //得到资源中的Raw数据流 InputStream in = getResources().openRawResource(R.raw.test); //得到数据的大小 int length = in.available(); byte [] buffer = new byte[length]; //读取数据 in.read(buffer); //依test.txt的编码类型选择合适的编码,如果不调整会乱码 res = EncodingUtils.getString(buffer, "BIG5"); //关闭 in.close(); }catch(Exception e){ e.printStackTrace(); }
读写SD卡中的文件。也就是/mnt/sdcard/目录下面的文件
//写数据到SD中的文件 public void writeFileSdcardFile(String fileName,String write_str) throws IOException{ try{ FileOutputStream fout = new FileOutputStream(fileName); byte [] bytes = write_str.getBytes(); fout.write(bytes); fout.close(); } catch(Exception e){ e.printStackTrace(); } } //读SD中的文件 public String readFileSdcardFile(String fileName) throws IOException{ String res=""; try{ FileInputStream fin = new FileInputStream(fileName); int length = fin.available(); byte [] buffer = new byte[length]; fin.read(buffer); res = EncodingUtils.getString(buffer, "UTF-8"); fin.close(); } catch(Exception e){ e.printStackTrace(); } return res; }
使用File类进行文件的读写
//读文件 public String readSDFile(String fileName) throws IOException { File file = new File(fileName); FileInputStream fis = new FileInputStream(file); int length = fis.available(); byte [] buffer = new byte[length]; fis.read(buffer); res = EncodingUtils.getString(buffer, "UTF-8"); fis.close(); return res; } //写文件 public void writeSDFile(String fileName, String write_str) throws IOException{ File file = new File(fileName); FileOutputStream fos = new FileOutputStream(file); byte [] bytes = write_str.getBytes(); fos.write(bytes); fos.close(); }
相关文章推荐
- Codeforces Beta Round #5 B. Center Alignment 模拟题
- linux IPC总结——管道
- (1)把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”; (2)编写单元测试进行测试; (3)用ElcEmma查看代码覆盖率,要求覆盖率达到100%。
- 《软件工程》前三章读后感
- Servlet和jsp小应用
- 常用的Xcode插件
- python系列之 RabbitMQ -- TOPICS
- Impala 1、Impala理论
- Hibernate逍遥游记-第15章处理并发问题-001事务并发问题及隔离机制介绍
- Problem D: 最小节点(线性表)
- CreateWindowEx()自定义窗口句柄,消息处理
- 构建之法:1、2、3章阅读后感
- Android之性能优化
- HDU 5365 Run [Ad Hoc]
- ActionMode使用及样式配置
- Spring和MyBatis环境整合
- 关于MVC中利用Javascript跳转页面的问题的备忘
- Android中visibility属性VISIBLE、INVISIBLE、GONE的区别
- 变量、常量及输入处理
- QT线程发送消息通知界面小例