在Android中,是否可以将用户定义的对象存储到SQLite数据库中?例如:我创建了一个类,想要将该类对象存储到数据库中。这是可能的吗?如果可以,如何进行操作?在Blackberry平台上,我能够直接将对象存储在持久化对象中。在SQLite和Android中是否也可以这样做?
在Android中,是否可以将用户定义的对象存储到SQLite数据库中?例如:我创建了一个类,想要将该类对象存储到数据库中。这是可能的吗?如果可以,如何进行操作?在Blackberry平台上,我能够直接将对象存储在持久化对象中。在SQLite和Android中是否也可以这样做?
使用这段代码将您的对象转换为字节数组并将其存储在数据库中作为“BLOB”
请注意,这里的“BLOB”是二进制大型对象的缩写。public byte[] makebyte(Dataobject modeldata) {
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(modeldata);
byte[] employeeAsBytes = baos.toByteArray();
ByteArrayInputStream bais = new ByteArrayInputStream(employeeAsBytes);
return employeeAsBytes;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
使用以下代码将您的字节数组再次转换为对象
public Dataobject read(byte[] data) {
try {
ByteArrayInputStream baip = new ByteArrayInputStream(data);
ObjectInputStream ois = new ObjectInputStream(baip);
Dataobject dataobj = (Dataobject ) ois.readObject();
return dataobj ;
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return null;
}