在JTextArea中显示大文件

时间:2010-04-29 10:51:37

标签: java swing jtextarea

我目前正在使用Swing UI Assignment。此工作涉及在JTextArea中显示大型文件内容。文件大小可以大到2 GB。

我最初的想法是懒洋洋地加载文件中的内容,比如向用户显示1 MB的内容。当用户滚动时,我将检索要显示的下一个1 MB内容。所有这些操作都将在后台线程(Swing Worker)中进行。

我查看了JTextArea API,方法insert使用String和int(insert的位置)作为参数。

这就足够了,但我担心性能,因为检索到的内容(一次1 MB)必须转换为String对象。

是否有任何其他解决方法或任何其他替代/更好的解决方案。

1 个答案:

答案 0 :(得分:4)

效率问题在于文档模型。

可行的方法可能是提供有效的自定义Document实施。

但是,就个人而言,我会尝试重新考虑并尝试使用不同的用户界面。谁还想滚动浏览2 GB的数据呢?