android - 如何在 Android 中将自定义对象写入文件

标签 android file object serializable objectoutputstream

private Map<String, List<DrawPath>> savedPath= new LinkedHashMap<String, List<DrawPath>>();

我想将此“savedPath”写入文件,但抛出 IOException:

public static class DrawPath implements Serializable{
        /**
         * 
         */
        public static final long serialVersionUID = 1L;
        public Path path;
                public Paint paint;
      }

 ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(sdFile));

out.writeObject(savedPath); // throws IOExcption

改成Map<String, String>就成功了, 它与我的自定义 DrawPath 类相关吗?如何将此对象写入文件成功?谢谢

最佳答案

确保您写入文件的所有对象都是可序列化的,保存 Paint 可能是问题所在

关于android - 如何在 Android 中将自定义对象写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18301141/

相关文章:

android - 为什么 android studio 不为所有安全参数生成代码?

javascript - Android Webview 不加载 javascript 注入(inject)的图像

javascript - 我如何解构一个包含其他对象的javascript对象

javascript - jQuery - 从数组对象中获取值

java - Android根据用户输入创建文件名路径

push() 和 for 循环的 Javascript JSONArray 问题

android - OnCreateView 未在 fragment 的对话框 fragment 中调用

Android : AchartEngine Weight chart layout. addView 引发异常

c - 为什么文件数据不保存到结构中?

c++ - 如何将 vector 转换为 typedef 类型的数组