org.apache.pdfbox.pdfparser

## Class PDFStreamParser

- java.lang.Object
- - org.apache.pdfbox.pdfparser.BaseParser
  - - org.apache.pdfbox.pdfparser.PDFStreamParser

    public class PDFStreamParser
    extends BaseParser

This will parse a PDF byte stream and extract operands and such.

Author:
  Ben Litchfield

### Field Summary

### Fields inherited from class org.apache.pdfbox.pdfparser.BaseParser

`A, ASCII_CR, ASCII_LF, B, D, DEF, document, E, ENDOBJ_STRING, ENDSTREAM_STRING, J, M, N, O, R, S, source, STREAM_STRING, T`

### Constructor Summary

Constructors
Constructor and Description
`PDFStreamParser(byte[] bytes)` Constructor.
`PDFStreamParser(PDContentStream pdContentstream)` Constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `close()` Close the underlying resource.
`List<Object>` `parse()` This will parse all the tokens in the stream.
`Object` `parseNextToken()` This will parse the next token in the stream.

### Methods inherited from class org.apache.pdfbox.pdfparser.BaseParser

`getObjectKey, isClosing, isClosing, isDigit, isDigit, isEndOfName, isEOF, isEOL, isEOL, isSpace, isSpace, isWhitespace, isWhitespace, parseCOSArray, parseCOSDictionary, parseCOSName, parseCOSString, parseDirObject, readExpectedChar, readExpectedString, readGenerationNumber, readInt, readLine, readLong, readObjectNumber, readString, readString, readStringNumber, skipLinebreak, skipSpaces, skipWhiteSpaces`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### PDFStreamParser

    public PDFStreamParser(PDContentStream pdContentstream)
                    throws IOException

Constructor.

Parameters:
  `pdContentstream` - The content stream to parse.
Throws:
  `IOException` - If there is an error initializing the stream.

#### PDFStreamParser

    public PDFStreamParser(byte[] bytes)

Constructor.

Parameters:
  `bytes` - the bytes to parse.

### Method Detail

#### parse

    public List<Object> parse()
                       throws IOException

This will parse all the tokens in the stream. This will close the stream when it is finished parsing.

Returns:
  All of the tokens in the stream.
Throws:
  `IOException` - If there is an error while parsing the stream.

#### parseNextToken

    public Object parseNextToken()
                          throws IOException

This will parse the next token in the stream.

Returns:
  The next token in the stream or null if there are no more tokens in the stream.
Throws:
  `IOException` - If an io error occurs while parsing the stream.

#### close

    public void close()
               throws IOException

Close the underlying resource.

Throws:
  `IOException` - if something went wrong