存储:
SharedPreferences passwd = getPreferences(Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = passwd.edit();
ByteArrayOutputStream toByte = new ByteArrayOutputStream();
ObjectOutputStream oos = null;
try {
oos = new ObjectOutputStream(toByte);
} catch (IOException e) {
// TODO Auto-generated catch block
Log.e(TAG, e.toString());
}
if(oos != null){
Log.e(TAG, "oos != null");
try {
oos.writeObject(passwords);
} catch (IOException e) {
// TODO Auto-generated catch block
Log.e(TAG, e.toString());
}
}
else
{
Log.e(TAG, "oos == null");
}
//对byte[]进行Base64编码
String PasswordMapBase64 = new String(Base64Coder.encode(toByte.toByteArray()));
editor.putString("KEY", PasswordMapBase64);
editor.commit();
提取:
SharedPreferences prefer = getPreferences(Activity.MODE_PRIVATE);
String passwordinbase64 = prefer.getString("KEY", null);
if(passwordinbase64 != null)
{
byte[] base64Bytes = Base64Coder.decode(passwordinbase64);
ByteArrayInputStream bais = new ByteArrayInputStream(base64Bytes);
ObjectInputStream ois = null;
try {
ois = new ObjectInputStream(bais);
} catch (StreamCorruptedException e) {
// TODO Auto-generated catch block
Log.e("------", e.toString());
} catch (IOException e) {
// TODO Auto-generated catch block
Log.e("------", e.toString());
}
if(ois != null)
{
try {
passwords = (Map) ois.readObject();
} catch (OptionalDataException e) {
// TODO Auto-generated catch block
Log.e("------", e.toString());
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
Log.e("------", e.toString());
} catch (IOException e) {
// TODO Auto-generated catch block
Log.e("------", e.toString());
}
}
}
其中:
private Map<String,String> passwords = new HashMap<String,String>();