java.io.StreamCorruptedException:无效的流标头:00000001简单项目



我的问题是,当我尝试反序列化信息时,我的项目(一个简单的Inventory,其中项目被序列化到文件夹,然后反序列化)抛出了一个"java.io.StreamCorruptedException:无效流头:00000001"。我以前没有遇到任何问题;然而,当我使用Finder(mac)手动删除其中一个序列化文件时,这就是抛出异常的时候。我的反序列化代码是:

private void compileInventory() {
    //run through text file and create inventory 
    Inv = new <Item>ArrayList();
    File f = new File(loc);
    File[] list = f.listFiles();
    Inv.clear();
    if (f.exists()) {
        for (File n : list) {
                try {
                    FileInputStream fileIn = new FileInputStream(n.getAbsolutePath());
                    ObjectInputStream in = new ObjectInputStream(fileIn);
                    Inv.add((Item) in.readObject());
                    in.close();
                    fileIn.close();
                } catch (IOException i) {
                    i.printStackTrace();
                    return;
                } catch (ClassNotFoundException c) {
                    System.out.println("Item class not found");
                    c.printStackTrace();
                    return;
                }
            }
    }
}

可能是你的mac在该文件夹中创建了一些系统文件,而现在你的应用程序正试图取消实现它们吗?

相关内容

  • 没有找到相关文章

最新更新