316meng
V2EX  ›  问与答

#android 写入/读取数据不全

  •  
  •   316meng · Mar 16, 2018 · 999 views
    This topic created in 3013 days ago, the information mentioned may be changed or developed.

    例如使用序列化存储存入一个 List,保存时没有错误,但有时会出现再次读取出后 List 中的某些元素会缺失,比如我的正确 List 是["1","2","3","4","5"],读出后的结果可能为["1","2","3"]或["4","5"],请问这是什么原因造成的,是存储时数据保存不全还是读取时出的问题。使用的代码如下,其中 DataCollector.finalDataMap 是静态变量,使用时会反复执行存储操作。 存

    
                String md5 = basicOperation.getMD5((Serializable) DataCollector.finalDataMap);
                FinalDaTaWithMD5 fdw5 = new FinalDaTaWithMD5();
                fdw5.finaldata = DataCollector.finalDataMap;
                fdw5.MD5 = md5;
                fdw5.qy_type = DataCollector.qyt;
                fdw5.ds_type = DataCollector.dst;
                FileOutputStream fos = new FileOutputStream(dir+File.separator+DataCollector.wjm+
                        ".dat");
                ObjectOutputStream os = new ObjectOutputStream(fos);
                os.writeObject(fdw5);
                os.close();
    
    
              try {
                        FileInputStream fis = new FileInputStream(outfilename);
                        ObjectInputStream is = new ObjectInputStream(fis);
                        FinalDaTaWithMD5 fdw5 = (FinalDaTaWithMD5) is.readObject();
                        map = fdw5.finaldata;
                        DataCollector.qyt = fdw5.qy_type;
                        DataCollector.dst = fdw5.ds_type;
                        is.close();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
    
    No Comments Yet
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5282 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 05:48 · PVG 13:48 · LAX 22:48 · JFK 01:48
    ♥ Do have faith in what you're doing.