StyledEditorKit - Document - NotSerializableException

时间:2011-02-02 05:10:11

标签: java swing

我正在评估在JTextPane(textpane)中用作编辑器工具包的StyledEditorKit的可用性。一旦用户将任何内容键入编辑器并关闭编辑器,程序将获取Document(textpane.getDocument())并尝试序列化对象Document(

out = new ObjectOutputStream(new FileOutputStream("f://test1234.ser"));
out.writeObject(doc);)

)。

但是此时会引发NotSerializableException。但是,如果用户没有键入任何文本(编辑器未更改Document对象),则应用程序可以顺利地序列化Document对象。使用Java 5和6发生此行为,但不使用1.4。

有什么想法吗?

感谢。 Felipo。

1 个答案:

答案 0 :(得分:1)

实际上你必须使用一个kit的write()方法传递Writer或OutputStream。当您需要还原文档时,您创建一个空文档并使用read()方法传递InputStream或Writer。 例如。 HTMLEditorKit生成内容的html表示。 RTFEditorKit相应地产生rtf。 例如,您可以编写自己的Writer / Reader http://java-sl.com/editor_kit_tutorial_reader_writer.html