Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JEditorPane&;HTMLEditorKit-太慢_Java_Html_Swing - Fatal编程技术网

Java JEditorPane&;HTMLEditorKit-太慢

Java JEditorPane&;HTMLEditorKit-太慢,java,html,swing,Java,Html,Swing,我正在尝试实现一个基本的文本编辑器,包括字体、粗体、斜体、下划线和颜色选项。我曾经使用过JEditorPane和相关的HTMLEditorKit,但当我加载一个400K文档时,加载需要整整一分钟,大多数编辑需要几秒钟。我也有过类似的经历,我所做的是让JEditorPane在400K文档上只显示一个页面大小的窗口(如果您的情况可能的话)然后手动处理滚动问题。 通过这种方式,我从小部件中获得了很多很酷的功能,而没有大幅减速(因为小部件只看到部分文本),但我必须编写大量滚动代码,并在用户移动时不断更新

我正在尝试实现一个基本的文本编辑器,包括字体、粗体、斜体、下划线和颜色选项。我曾经使用过JEditorPane和相关的HTMLEditorKit,但当我加载一个400K文档时,加载需要整整一分钟,大多数编辑需要几秒钟。

我也有过类似的经历,我所做的是让JEditorPane在400K文档上只显示一个页面大小的窗口(如果您的情况可能的话)然后手动处理滚动问题。 通过这种方式,我从小部件中获得了很多很酷的功能,而没有大幅减速(因为小部件只看到部分文本),但我必须编写大量滚动代码,并在用户移动时不断更新小部件内容

另外,我这样做是为了能够查看7G文件,这些文件无论如何都无法放入我的内存中。


也许有些提示可以帮助你加快速度。我还建议您基于StyledEditorKit编写自己的EditorKit,并提供所有必要的属性支持(参见示例)。

您可能无法在此处获得非常有用的答案。如果你敢在这里批评Java或它的任何API太慢或构思不好,你会得到很多尖刻的评论,人们会对你投反对票,对尖刻、毫无意义的评论投赞成票。:)谢谢你的反馈。我已经考虑过了,但真的想避免邪恶的滚动代码。不过,我很高兴您能够处理7GB的文件。您能否就如何拆分文档提供指导?因为你不能真的在标签中间分裂(类似或

)。文件是日志文件,所以我在新行上分裂。恐怕不能处理所有类型的文件。至少不是微不足道的。