Chinaunix首页 | 论坛 | 博客
  • 博客访问: 180998
  • 博文数量: 43
  • 博客积分: 1428
  • 博客等级: 上尉
  • 技术积分: 410
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-02 09:33
文章分类

全部博文(43)

文章存档

2014年(3)

2013年(3)

2011年(1)

2010年(36)

分类: Java

2010-08-23 13:09:02

在Android系统中,这些文件保存在 /data/data/PACKAGE_NAME/files 目录下。

数据读取

  1. public static String read(Context context, String file) { 
  2. String data = ""
  3. try { 
  4. FileInputStream stream = context.openFileInput(file); 
  5. StringBuffer sb = new StringBuffer(); 
  6. int c; 
  7. while ((c = stream.read()) != -1) { 
  8. sb.append((char) c); 
  9. stream.close(); 
  10. data = sb.toString(); 
  11.  
  12. catch (FileNotFoundException e) { 
  13. catch (IOException e) { 
  14. return data; 

从代码上,看起来唯一的不同就是文件的打开方式了: context.openFileInput(file); Android中的文件读写具有权限控制,所以使用context(Activity的父类)来打开文件,文件在相同的Package中共享。这里的 Package的概念同Preferences中所述的Package,不同于Java中的Package。

数据写入

  1. public static void write(Context context, String file, String msg) { 
  2. try { 
  3. FileOutputStream stream = context.openFileOutput(file, 
  4. Context.MODE_WORLD_WRITEABLE); 
  5. stream.write(msg.getBytes()); 
  6. stream.flush(); 
  7. stream.close(); 
  8. catch (FileNotFoundException e) { 
  9. catch (IOException e) { 

在这里打开文件的时候,声明了文件打开的方式。

一般来说,直接使用文件可能不太好用,尤其是,我们想要存放一些琐碎的数据,那么要生成一些琐碎的文件,或者在同一文件中定义一下格式。其实也可以将其包装成Properties来使用:

  1. public static Properties load(Context context, String file) { 
  2. Properties properties = new Properties(); 
  3. try { 
  4. FileInputStream stream = context.openFileInput(file); 
  5. properties.load(stream); 
  6. catch (FileNotFoundException e) { 
  7. catch (IOException e) { 
  8. return properties; 
  9.  
  10. public static void store(Context context, String file, Properties properties) { 
  11. try { 
  12. FileOutputStream stream = context.openFileOutput(file, 
  13. Context.MODE_WORLD_WRITEABLE); 
  14. properties.store(stream, ""); 
  15. catch (FileNotFoundException e) { 
  16. catch (IOException e) { 
阅读(1538) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-08-25 15:21:26

Download More than 1000 free IT eBooks: http://free-ebooks.appspot.com