Class HWPFDocumentCore

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable
    Direct Known Subclasses:
    HWPFDocument, HWPFOldDocument

    public abstract class HWPFDocumentCore
    extends POIDocument
    This class holds much of the core of a Word document, but without some of the table structure information. You generally want to work with one of HWPFDocument or HWPFOldDocument
    • Constructor Detail

      • HWPFDocumentCore

        public HWPFDocumentCore​(java.io.InputStream istream)
                         throws java.io.IOException
        This constructor loads a Word document from an InputStream.
        Parameters:
        istream - The InputStream that contains the Word document.
        Throws:
        java.io.IOException - If there is an unexpected IOException from the passed in InputStream.
      • HWPFDocumentCore

        public HWPFDocumentCore​(POIFSFileSystem pfilesystem)
                         throws java.io.IOException
        This constructor loads a Word document from a POIFSFileSystem
        Parameters:
        pfilesystem - The POIFSFileSystem that contains the Word document.
        Throws:
        java.io.IOException - If there is an unexpected IOException from the passed in POIFSFileSystem.
      • HWPFDocumentCore

        public HWPFDocumentCore​(DirectoryNode directory)
                         throws java.io.IOException
        This constructor loads a Word document from a specific point in a POIFSFileSystem, probably not the default. Used typically to open embeded documents.
        Parameters:
        directory - The DirectoryNode that contains the Word document.
        Throws:
        java.io.IOException - If there is an unexpected IOException from the passed in POIFSFileSystem.
    • Method Detail

      • verifyAndBuildPOIFS

        public static POIFSFileSystem verifyAndBuildPOIFS​(java.io.InputStream istream)
                                                   throws java.io.IOException
        Takes an InputStream, verifies that it's not RTF or PDF, builds a POIFSFileSystem from it, and returns that.
        Throws:
        java.io.IOException
      • getRange

        public abstract Range getRange()
        Returns the range which covers the whole of the document, but excludes any headers and footers.
      • getOverallRange

        public abstract Range getOverallRange()
        Returns the range that covers all text in the file, including main text, footnotes, headers and comments
      • getDocumentText

        public java.lang.String getDocumentText()
        Returns document text, i.e. text information from all text pieces, including OLE descriptions and field codes
      • getText

        @Internal
        public abstract java.lang.StringBuilder getText()
        Internal method to access document text
      • getCharacterTable

        public CHPBinTable getCharacterTable()
      • getParagraphTable

        public PAPBinTable getParagraphTable()
      • getStyleSheet

        public StyleSheet getStyleSheet()
      • getListTables

        public ListTables getListTables()
      • getFontTable

        public FontTable getFontTable()
      • getMainStream

        @Internal
        public byte[] getMainStream()
      • getEncryptionInfo

        public EncryptionInfo getEncryptionInfo()
                                         throws java.io.IOException
        Overrides:
        getEncryptionInfo in class POIDocument
        Returns:
        the encryption info if the document is encrypted, otherwise null
        Throws:
        java.io.IOException - If retrieving the encryption information fails