开发者

implement Bookmark list in java

I am developing a program which has three JTextBox which my users can enter and check some text for right rule.

So I want add a ablitiy to my program that my users can add or remove their favorite text to a Favorite List and can create folder in Favorite list and put some text in it, such as开发者_如何转开发 Bookmark library in FireFox or other web browser.

I want use RandomAccessFile to save favorite list as a favorite source.

How do I implemet it? is there beter way to implement it? is there beter way from RandomAccessFile?

Can any one help me?

Thanks.


There could be lots of approaches. It all depends on what you want to achieve.

  1. Consider using Java serialization mechanism. You can serialize a collection of bookmarks to a file. When your app starts, you deserialize it, and get the same collection data.

    The advantages are: simple and easy implementation. The disadvantages: you can't look through stored bookmarks in a text editor or something. The same class hierarchy is to be used to load the serialized version.

  2. XML is human-readable and provides easy interoperability. Other applications would be able to handle your list of bookmarks.

    It usually takes more resources to parse the XML and load it to memory and then to create the internal object structures. Though you can use the DOM to traverse the tree all the time, it could be not as convenient as the internal data structure using specialized classes.

  3. Random Access Files work best with fixed record sizes. It means all the fields of your bookmarks must be fixed-length. For example, the name of a bookmark is String. When you write it out to a file, you store it like an array of a fixed length, let's say 20. This automatically implies that if users give a bookmark the name which length is greater than 20, the remaining characters would be lost.

    It is also easy to implement with the caveats above. Of course the records could be of variable length, but then you lose the random access to file because you cannot easily calculate the position of a specific record.

Firefox uses JSON for storing bookmarks and allows exporting to HTML. You can explore this too.


You can also store bookmarks, and things you want to keep between sessions in the Preferences, see http://download.oracle.com/javase/6/docs/api/java/util/prefs/Preferences.html

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜