安卓Android面试题面了个试天花板谈Android开发

Android面试简录——文件存储

2015-04-09  本文已影响863人  nancymi

* SharedPreferences

【拓展】在SharedPreferences中存取可序列化对象。
序列化对象类:
public class Product implements Serializable {
private String name;
private String id;
private String price;
//...
}
保存:
Product product = new Product();
product.setId(1234);
product.setName("nancy");
product.setPrice("9999");
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.setObject(product);
SharedPreferences sharedPreferences = getSharedPreferences("Product", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
String productBase64 = new String(Base64.encodeBase64(baos.toByteArray()));
editor.putString("product", productBase64);
editor.commit();
读取:
String productBase64 = sharedPreferences.getString("product", "");
byte[] base64Bytes = Base64.decodeBase64(productBase64.getBytes());
ByteArrayInputStream bais = new ByteArrayInputStream(base64Bytes);
ObjectInputStream ois = new ObjectInputStream(bais);
Product product = (Product) ois.readObject();

【拓展】使用PreferenceActivity预定义组件布局界面应注意什么?
1.一个设置界面对应一个<PreferenceScreen>标签
2.<PreferenceCategory>表示一个设置分类,title属性表示分类名称
3.设置项标签可以不属于任何设置分类
4.嵌套<PreferenceScreen>,说明该设置页有一个子设置页
5.android:key属性的值是保存在XML文件中的key-value的key
6.android:title,android:summary表示设置项的标题和摘要


* 流文件


XML存储


JSON存储

上一篇下一篇

猜你喜欢

热点阅读