## Package org.apache.poi.contrib.poibrowser

See:
Description

Class Summary
Codec: Provides utility methods for encoding and decoding hexadecimal data.
DocumentDescriptor: Describes the most important (whatever that is) features of a `POIFSDocument`.
DocumentDescriptorRenderer: `TreeCellRenderer` for a `DocumentDescriptor`.
ExtendableTreeCellRenderer: This is a `TreeCellRenderer` implementation which is able to render arbitrary objects.
POIBrowser: The main class of the POI Browser.
PropertySetDescriptor: Describes the most important (whatever that is) features of a stream containing a `PropertySet`.
PropertySetDescriptorRenderer: Renders a `PropertySetDescriptor` by more or less dumping the stuff into a `JTextArea`.
TreeReaderListener: Organizes document information in a tree model in order to be e.g.
Util: Contains various (well, just one at the moment) static utility methods.

## Package org.apache.poi.contrib.poibrowser Description

The POI Browser is a very simple Swing GUI tool that displays the internal structure of a Microsoft Office file. It concentrates on streams in the Horrible Property Set Format (HPSF). In order to access these streams the POI Browser uses the package `org.apache.poi.hpsf`.

A file in Microsoft's Office format can be seen as a filesystem within a file. For example, a Word document like sample.doc is just a simple file from the operation system's point of view. However, internally it is organized into various directories and files. For example, sample.doc might consist of the three internal files (or "streams", as Microsoft calls them) `\001CompObj`, `\005SummaryInformation`, and `WordDocument`. (In these names \001 and \005 denote the unprintable characters with the character codes 1 and 5, respectively.) A more complicated Word file typically contains a directory named `ObjectPool` with more directories and files nested within it.

The POI Browser makes these internal structures visible. It takes one or more Microsoft files as input on the command line and shows directories and files in a tree-like structure. On the top-level POI Browser displays the (operating system) filenames. An internal file (i.e. a "stream" or a "document") is shown with its name, its size and a hexadecimal dump of its first bytes.

The POI Browser pays special attention to property set streams. For example, the `\005SummaryInformation` stream contains information like title and author of the document. The POI Browser opens every stream in a POI filesystem. If it encounters a property set stream, it displays not just its first bytes but analyses the whole stream and displays its contents in a more or less readable manner.

Copyright © 2003 Apache Software Foundation.