热门IT资讯网

《Android面试宝典》学习笔记(第五章:文件存储)

发表于:2024-11-24 作者:热门IT资讯网编辑
编辑最后更新 2024年11月24日,Android SDK 支持哪些文件存储技术?SharedPreferences、流文件存储、XML半结构化存储、JSON存储、数据库、第三方面向对象数据库。如何使用ShardPreferences存

Android SDK 支持哪些文件存储技术?

SharedPreferences、流文件存储、XML半结构化存储、JSON存储、数据库、第三方面向对象数据库。


如何使用ShardPreferences存取key-value类型的数据?

//实例化SharedPreferences对象(第一步) SharedPreferences mySharedPreferences= getSharedPreferences("test", Activity.MODE_PRIVATE); //实例化SharedPreferences.Editor对象(第二步) SharedPreferences.Editor editor = mySharedPreferences.edit(); //用putString的方法保存数据 editor.putString("name", "Karl"); editor.putString("habit", "sleep"); //提交当前数据 editor.commit();
//同样,在读取SharedPreferences数据前要实例化出一个SharedPreferences对象 SharedPreferencessharedPreferences= getSharedPreferences("test", Activity.MODE_PRIVATE); // 使用getString方法获得value,注意第2个参数是value的默认值 String name =sharedPreferences.getString("name", ""); String habit =sharedPreferences.getString("habit", ""); //使用toast信息提示框显示信息

SharedPreferences保存的数据文件存放在哪个目录中?是否可以不使用SharedPreferences读取这些数据文件?

文件存储路径为data/data/packagename/shared_prefs

可以直接用文件流读取文件。



Sharedpreferences是否可以把数据保存在SD卡上?

可以用Java反射技术修改文件保存路径。


SharedPreferences可以保存图像数据吗?

将图像转化为二进制数据即可:

public byte[] getBitmapByte(Bitmap bitmap){      ByteArrayOutputStream out = new ByteArrayOutputStream();      bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);      try {          out.flush();          out.close();      } catch (IOException e) {          e.printStackTrace();      }      return out.toByteArray();  }

读取:

  1. public Bitmap getBitmapFromByte(byte[] temp){      if(temp != null){          Bitmap bitmap = BitmapFactory.decodeByteArray(temp, 0, temp.length);          return bitmap;      }else{          return null;      }  }


如何通过PreferencesActivity实现设置页面?

http://www.jb51.net/article/31915.htm


PreferenceActivity保存数据的默认文件名是什么?如何更改?

packagename_preferences.xml。

用PreferenceManager.getSharedPreferencesName方法修改。


Android SDK支持哪些获取文件输入输出流的方式?

1:InputStream和OutputStream方式。

http://blog.csdn.net/ztp800201/article/details/7322110

2:Context.openFileOutput和Context.openFileInput对象。

http://blog.sina.com.cn/s/blog_6e5195850100zssn.html


SAX引擎分析XML文档的过程?

初始化-->开始处理每一个XML元素-->处理完元素-->处理完文件,完成收尾工作-->保存XML元素的文本


如何将XML文件转换为Java对象?

http://showlike.iteye.com/blog/1050843







0