标签:文件存储 android openfileoutput sdcard
前两篇已经学习了Android文件存储的 SharedPreference 和 SQLite 的实现
(1)文件存储 介绍
(2)一个列子
(1) Activity提供了openFileOutput()方法可以用于把数据输出到文件中;
(2)文件可用来存放大量数据,如文本、图片、音频等。
(3)存储默认位置: /data/data/<包名>/files/***.***
(4)Activity还提供了getCacheDir()和getFilesDir()方法
1)getCacheDir()方法用于获取/data/data//cache目录
2)getFilesDir()方法用于获取/data/data//files目录。
//写入数据 private void writeFiles(String con) throws IOException{ FileOutputStream fos; try { fos = openFileOutput("a.txt",MODE_PRIVATE); fos.write(con.getBytes()); fos.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } }Java基础学的不好 ;
//读取数据 private String readFiles() throws IOException{ try { FileInputStream fis=openFileInput("a.txt"); ByteArrayOutputStream baos=new ByteArrayOutputStream(); byte[] buffer=new byte[1024]; int len=0; while((len=fis.read(buffer))!=-1){ baos.write(buffer,0,len); } fis.close(); baos.close(); return baos.toString(); } catch (FileNotFoundException e) { e.printStackTrace(); } return DBNAME; }
<!-- 在SDCard中创建与删除文件权限 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <!-- 往SDCard写入数据权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
1)?Environment.getExternalStorageState()方法用于获取SDCard的状态,
如果手机装有SDCard,并且可以进行读写,那么方法返回的状态等于Environment.MEDIA_MOUNTED。
File sdCardDir = new File("/sdcard"); //获取SDCard目录 File saveFile = new File(sdCardDir, "abc.txt");
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ File sdCardDir = Environment.getExternalStorageDirectory();//获取SDCard目录 File saveFile = new File(sdCardDir, “a.txt”); FileOutputStream outStream = new FileOutputStream(saveFile); outStream.write("test".getBytes()); outStream.close(); }
或者是(因为取得SDCard目录的方法不一样) :
File saveFile = new File("/sdcard/a.txt"); FileOutputStream outStream = new FileOutputStream(saveFile); outStream.write("test".getBytes()); outStream.close()
主要使用 OpenFileOutPut 类进行 文件的存储 ;比较重要的 是 存储在SDCard 上;
java的 IO 没学好 ,记了好多遍 ,用了好多次 都没记住 ,望大神指点指点!!!
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:文件存储 android openfileoutput sdcard
原文地址:http://blog.csdn.net/lablenet/article/details/48029865