Top-level util package are classes that are useful throughout the project. These classes are generally generic enough to be useful in any project and should be contributed elsewhere!
Related DocumentationFor overviews, tutorials, examples, guides, and tool documentation, please see:
Interface Summary Interface Description DelayableLittleEndianOutputImplementors of this interface allow client code to 'delay' writing to a certain section of a data output stream.
A typical application is for writing BIFF records when the size is not known until well after the header has been written.
FixedFieldbehavior of a field at a fixed location within a byte array LittleEndianConstsa repository for constants shared by classes within this package LittleEndianInput LittleEndianOutput TempFileCreationStrategyInterface used by the
TempFileutility class to create temporary files.
Class Summary Class Description ArrayUtilUtility classes for dealing with arrays. BitFieldManage operations dealing with bit-mapped fields. BitFieldFactoryReturns immutable Bitfield instances. BoundedInputStreamThis is a stream that will only supply bytes up to a certain length - if its position goes above that, it will stop. ByteFieldrepresentation of a byte (8-bit) field at a fixed location within a byte array CloseIgnoringInputStreamA wrapper around an
InputStream, which ignores close requests made to it.
CodePageUtilUtilities for working with Microsoft CodePages. CommonsLoggerA logger class that strives to make it as easy as possible for developers to write log calls, while simultaneously making those calls as cheap as possible by performing lazy evaluation of the log message. ConfiguratorHelper for fetching int values from system properties DefaultTempFileCreationStrategy DrawingDumpDump out the aggregated escher records FontMetricsDumper HexDumpdump data in hexadecimal format HexReadUtilities to read hex from files. IntegerFieldrepresentation of an integer (32-bit) field at a fixed location within a byte array IntListA List of int's; as full an implementation of the java.util.List interface as possible, with an eye toward minimal creation of objects the mimicry of List is as follows: if possible, operations designated 'optional' in the List interface are attempted wherever the List interface refers to an Object, substitute int wherever the List interface refers to a Collection or List, substitute IntList the mimicry is not perfect, however: operations involving Iterators or ListIterators are not supported remove(Object) becomes removeValue to distinguish it from remove(int index) subList is not supported IntMapper<T>A List of objects that are indexed AND keyed by an int; also allows for getting the index of a value in the list IOUtils JvmBugs LittleEndiana utility class for handling little-endian numbers, which the 80x86 world is replete with. LittleEndianByteArrayInputStreamAdapts a plain byte array to
LittleEndianByteArrayOutputStreamAdapts a plain byte array to
LittleEndianCP950ReaderStream that converts CP950 (MSOffice's dialect of Big5), with zero-byte padding for ASCII and in LittleEndianOrder. LittleEndianInputStream LittleEndianOutputStream LocaleUtil LongFieldrepresentation of a long (16-bit) field at a fixed location within a byte array LZWDecompresserThis class provides common functionality for the various LZW implementations in the different file formats. NullLoggerA logger class that strives to make it as easy as possible for developers to write log calls, while simultaneously making those calls as cheap as possible by performing lazy evaluation of the log message. PngUtils POILogFactoryProvides logging without clients having to mess with configuration/initialization. POILoggerA logger interface that strives to make it as easy as possible for developers to write log calls, while simultaneously making those calls as cheap as possible by performing lazy evaluation of the log message. ReplacingInputStreamSimple FilterInputStream that can replace occurrences of bytes with something else. RLEDecompressingInputStreamWrapper of InputStream which provides Run Length Encoding (RLE) decompression on the fly. ShortFieldrepresentation of a short (16-bit) field at a fixed location within a byte array StaxHelperProvides handy methods for working with StAX parsers and readers StringCodepointsIterable StringUtilCollection of string handling utilities StringUtil.StringsIteratorAn Iterator over an array of Strings. SystemOutLoggerA logger class that strives to make it as easy as possible for developers to write log calls, while simultaneously making those calls as cheap as possible by performing lazy evaluation of the log message. TempFileInterface for creating temporary files. Units XMLHelperHelper methods for working with javax.xml classes.
Exception Summary Exception Description DocumentFormatExceptionThis is similar to
RecordFormatException, except this is thrown when there's a higher order problem with parsing a document beyond individual records.
LittleEndian.BufferUnderrunExceptionException to handle buffer underruns RecordFormatExceptionA common exception thrown by our binary format parsers (especially HSSF and DDF), when they hit invalid format or data when processing a record.
Annotation Types Summary Annotation Type Description BetaSignifies that a public API (public class, method or field) is subject to incompatible changes, or even removal, in a future release. InternalProgram elements annotated @Internal are intended for POI internal use only. NotImplementedThis feature has not been implemented yet. RemovalProgram elements annotated @Removal track the earliest final release when a deprecated feature will be removed. SuppressForbiddenMarking class for elements to be ignored by the forbidden apis check