Android数据持久化之File机制分析
程序员文章站
2023-10-21 21:21:26
本文实例讲述了android数据持久化之file机制。分享给大家供大家参考,具体如下:
在使用java se平台开发c/s结构的软件中,file 的io输入输出流的使用率...
本文实例讲述了android数据持久化之file机制。分享给大家供大家参考,具体如下:
在使用java se平台开发c/s结构的软件中,file 的io输入输出流的使用率是非常高的,通过使用io输入输出流可以对存储介质上的文件进行读写操作,下面的代码就是实现一个在android平台上使用file对象操作文件的功能:
package com.example.data_file; import java.io.file; import java.io.fileinputstream; import java.io.fileoutputstream; import java.io.ioexception; import java.io.inputstreamreader; import android.os.bundle; import android.annotation.suppresslint; import android.app.activity; import android.util.log; import android.view.menu; @suppresslint("sdcardpath") public class mainactivity extends activity { @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); try { file file = new file("/data/data/com.example.data_file/file.txt"); log.v("path=", file.getabsolutepath()); file.createnewfile(); fileoutputstream fos = new fileoutputstream(file); fos.write("乌拉啦啦啦".getbytes()); fos.close(); fileinputstream fis = new fileinputstream(file); inputstreamreader isreader = new inputstreamreader(fis); char[] chararray = new char[2]; int readlength = isreader.read(chararray); stringbuffer sb = new stringbuffer(); while(readlength != -1) { sb.append(chararray, 0, readlength); readlength = isreader.read(chararray); } log.v("file.txt文件内容是:", sb.tostring()); fis.close(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } } @override public boolean oncreateoptionsmenu(menu menu) { // inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.main, menu); return true; } }
注意:linux系统下对权限的要求比较高,不允许随便存储文件,所以存储文件的路径为:/data/data/<包名>/files/<文件名>
更多关于android相关内容感兴趣的读者可查看本站专题:《android文件操作技巧汇总》、《android数据库操作技巧总结》、《android编程之activity操作技巧总结》、《android编程开发之sd卡操作方法汇总》、《android开发入门与进阶教程》、《android资源操作技巧汇总》、《android视图view技巧总结》及《android控件用法总结》
希望本文所述对大家android程序设计有所帮助。