使用Java中的序列化,您可以轻松地将任何可序列化的对象解析为字节流。尝试使用 ObjectInputStream 和 ObjectOuputStream。
使用 json 进行还原。您可以使用google-gson将Java对象转换为JSON,反之亦然。
在安卓中使用包裹。类 android.os.Parcel 被设计为在 android(活动、服务)中的组件之间传递数据,但您仍然可以使用它来执行数据持久性。请记住,不要将数据发送到互联网,因为不同的平台可能有不同的算法来进行解析。
我写了一个序列化的演示,试一试。
public static void main(String[] args) throws Exception {
// Create raw data.
Map<Integer, String> data = new HashMap<Integer, String>();
data.put(1, "hello");
data.put(2, "world");
System.out.println(data.toString());
// Convert Map to byte array
ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
ObjectOutputStream out = new ObjectOutputStream(byteOut);
out.writeObject(data);
// Parse byte array to Map
ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray());
ObjectInputStream in = new ObjectInputStream(byteIn);
Map<Integer, String> data2 = (Map<Integer, String>) in.readObject();
System.out.println(data2.toString());
}