Android中SD Card数据存取
来源:互联网 发布:js按钮弹出对话框 编辑:程序博客网 时间:2024/05/22 14:32
Android中SD Card数据存取与前面所说的Android中文件的储存与访问很类似。
1.首先完成save方法
public void saveSDCard(String filename,String content)throws Exception { FileOutputStream outStream=context.openFileOutput(filename,Context.MODE_WORLD_READABLE+Context.MODE_WORLD_WRITEABLE);//可读写的操作模式 outStream.write(content.getBytes()); outStream.close(); }
FileService.java代码如下:
public class FileService{ private Context context; public FIleService(Context context){ this.context=context; } //保存内容 public void saveTOSDCard(String content)throws Exception{ File file = new FIle(Environment.getExternalStorageDirectory()."SDCard.txt");//第一个参数是文件存放的文件夹路径,此方法用于获取SD Card的目录。 FileOutputStream outStream = new FileOutputStream(file); outStream.write(content.getBytes()); outStream.close(); } }
注:获取SD Card的目录,换种方式可以是:
File sdCardDir = new File("/sdcard");//获取SD Card目录 File saveFile = new file(sdCardDir,"SDCard.txt");
两句可以合并为一句:
File saveFile = new File("/sdcard/ SDCard.txt");
2.FileServicetest.java测试类代码如下:
public class FileServiceTest extends AndroidTestCase{ private static final String TAG = "FileServiceTset"; public void testSaveToSDCard() throws Throwable{ if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){//判断SD Card是否可用,Environment.getExternalStorageState()获取外存储设备的状态 //该状态代表SD Card已经安装在手机上,并且可以进行读写访问 FileService fileService = new FileService(getContext()); fileService.saveToSDCard("明天会更好!"); }else{ Log.i(TAG,"sdcard不存在或写保护了"); } } }
3.执行测试,配置测试环境:
在AndroidManifest.xml文件中的<application/>中添加
<uses-library android:name="android.test.runner"/>
在<applicaton/>外添加
<instrumentation android:name="android.test.InstrumrntationTestRunner" android:targetPackage="com.sharpandroid.sdcard" android:label="Tsts for My App"/>
4.访问SD Card
若在此结束,执行testSave方法程序会报错。这是因为SD Card是需要添加访问权限的,对该程序而言SD Card为不存在。
在AndroidManifest.xml添加访问SD Card 权限的代码如下:
<!--在SDCard中创建与删除文件权限--> <users-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <!--往SDCard写入数据权限--> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
再次执行。
- Android中SD Card数据存取
- android 中模拟sd card
- android中读写SD Card文件
- android中读写SD Card文件
- Android中数据存取
- android sd card porting
- Android内存和SD卡的数据存取
- Hack Android SD Card support
- Hack Android SD Card support
- Virtual SD card on Android
- Android获取SD card路径
- 我的 Android 之旅(十九)---数据存储--向SD卡中以实体类的方式存取数据
- Android - 图解如何模拟sd card,管理sd card
- 存取在SD卡中
- Android的SharedPreference中putStringSet存取数据
- sd card
- sd card
- 在Android 模拟器上使用SD card
- ora-00600 [kddummy_blkchk]模拟与处理
- JNI的官方网址
- js,cookies做悬浮购物车
- 设计模式学习笔记之组合模式
- Simple-TODO Nodejs版配置运行
- Android中SD Card数据存取
- android TabActivity中onKeyDown无效问题
- uva 301 - Transportation
- Silverlight不写实体类也能显示数据呵呵
- Perl 最简单配置文件
- 7每CPU页框高速缓存
- 程序员笔试题---国信证券
- java根据rtf模版导出word
- 043-OCPThe memory used by Streams will be allocated from the shared pool