我要将一个字符串数组列表保存到本地数据库的 1 列中。我在这样做时遇到了一些问题。谁能告诉我哪里出错了...
private String serializeArray(List<String> array) {
try {
ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bytesOut);
oos.writeObject(array);
oos.flush();
oos.close();
return Base64.encodeToString(bytesOut.toByteArray(), Base64.NO_WRAP);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
private ArrayList<String> deserializeArray(String string) {
Log.d("USERDAO", string);
try {
ByteArrayInputStream bytesIn = new ByteArrayInputStream(Base64.decode(string, Base64.NO_WRAP));
ObjectInputStream ois = new ObjectInputStream(bytesIn);
return (ArrayList<String>) ois.readObject();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
在反序列化数组上返回 Arraylist 时出现空指针异常。serialiseArray 方法确实返回一个字符串,但我不确定它是否正确。