2

我们已经编写了JTree可以动态添加和删除节点的代码。

但是,我们无法拯救这棵树。每次我们运行程序,我们都无法得到之前创建的树。

如何JTree保存和加载?

4

1 回答 1

2

您可以序列化/反序列化您的 JTree,这是一个示例:

   JTree tree=new JTree();

   ....

   //serialization
    try{
        FileOutputStream file= new FileOutputStream("/home/alain/Bureau/serialisation.txt");
        ObjectOutputStream out = new ObjectOutputStream(file);
        out.writeObject(tree);
    }
    catch(Exception e){}
    //Deserialization
    JTree tree2=null;
    try{
        FileInputStream file= new FileInputStream("/home/alain/Bureau/serialisation.txt");
        ObjectInputStream in = new ObjectInputStream(file);
        tree2 = (JTree) in.readObject();
    }
    catch(Exception e){}

请注意,transient字段不可序列化,因此您还应该序列化您的 TreeModel

于 2012-06-15T10:08:13.133 回答