0

我正在编写一个基本的文本编辑器,并具有允许用户更改字体和应用样式(例如将其设为粗体等)的功能。我使用 AttributeSet 接口和 StyledContext 类以及 insertString(int offs, String str, AttributeSet a) DefaultStyledDocument 中的方法。但是,我保存并重新打开同一个文件(文本是使用 BufferedWriter 写入的),并且我应用于文本的所有样式都不再存在。是否有另一种方法来编写额外的样式信息并从 .txt 文件中读取它,如果是这样的话如何?谢谢。

4

1 回答 1

1

纯文本文件不会保留您的样式信息。混合文本和样式指令的一种方法是使用标记语言,例如 HTML。您可以使用一种已知的标记语言,例如 HTML、MarkdownLaTeX(还有很多其他语言)或创建自己的标记语言。例如,您可以创建一种基于 XML 的简单标记语言,以满足您的需求。
您可能想看看一些开源的 Swing 富文本编辑器,例如:JRichTextEditor

另一种选择是以包含样式说明的二进制格式保存您的文档。

于 2013-09-16T15:13:31.083 回答