JTextPane類的對象可以顯示文本、圖片和超鏈接等,在創(chuàng)建了一個JTextPane類的純文本格式對象后,可以向里面填寫入文字(英文或漢字等)、插入超鏈接或圖片,但無法通過getText()方法獲得其中除文字以外的內(nèi)容,也即無法保存包含文字、圖片和超鏈接的完全對象內(nèi)容,而如果一開始創(chuàng)建的是JTextPane類的HTML格式對象,則雖然可以保存文字的樣式(顏色和字體、字號等)但無法再通過insertIcon()方法插入、顯示圖片,更不能直接保存了,考慮到的解決思路:①通過手工在HTML文件中插入<img src="02.gif">語句來實現(xiàn)對圖片的保存,可是這樣比較不容易實現(xiàn),需要將圖片保存在特定位置,才可以在下次打開JTextPane類對象是顯示出圖片;②創(chuàng)建JTextPane類的純文本對象,在插入圖片、超鏈接、設(shè)置字體樣式或其它任何對JTextPane類的對象進(jìn)行的格式設(shè)置時均記錄下設(shè)置的位置和內(nèi)容,并和文本內(nèi)容一起保存到硬盤文件中,下次讀取時,按照記錄重新恢復(fù)原內(nèi)容,實現(xiàn)的過程更復(fù)雜;③將JTextPane對象通過對象序列化的方式在硬盤中保存為一個文件,下次讀取時再反序列化為完整對象。
最后,選擇了最好實現(xiàn)的第三種方法,序列化了JTextPane對象,表現(xiàn)出來的效果不錯。不過,在實現(xiàn)過程中未考慮程序的運行效率,現(xiàn)在也不太清楚,這樣的處理方式是不是比較沒有效率哩?
最后,選擇了最好實現(xiàn)的第三種方法,序列化了JTextPane對象,表現(xiàn)出來的效果不錯。不過,在實現(xiàn)過程中未考慮程序的運行效率,現(xiàn)在也不太清楚,這樣的處理方式是不是比較沒有效率哩?