# Class: com.pnfsoftware.jeb.util.encoding.Base64.InputStream

A [Base64.InputStream](Base64.InputStream) will read data from another `java.io.InputStream`, given in the constructor, and encode/decode to/from Base64 notation on the fly.

## Constructor: InputStream
- parameter: `in`, type: `java.io.InputStream`

Description: Constructs a [Base64.InputStream](Base64.InputStream) in DECODE mode.
parameter: in: the `java.io.InputStream` from which to read data.

## Constructor: InputStream
- parameter: `in`, type: `java.io.InputStream`
- parameter: `options`, type: `int`

Description: Constructs a [Base64.InputStream](Base64.InputStream) in either ENCODE or DECODE mode. 

 Valid options: 

```

   ENCODE or DECODE: Encode or Decode as data is read.
   DO_BREAK_LINES: break lines at 76 characters
     (only meaningful when encoding)
 
```
 

 Example: `new Base64.InputStream( in, Base64.DECODE )`
parameter: in: the `java.io.InputStream` from which to read data.
parameter: options: Specified options
see also: Base64#ENCODE
see also: Base64#DECODE
see also: Base64#DO_BREAK_LINES

## Method: read
- return type: `int`

Description: Reads enough of the input stream to convert to/from Base64 and returns the next byte.
return: next byte

## Method: read
- parameter: `dest`, type: `byte[]`
- parameter: `off`, type: `int`
- parameter: `len`, type: `int`
- return type: `int`

Description: Calls [#read()](#read()) repeatedly until the end of stream is reached or *len* bytes are read. Returns number of bytes read into array or \-1 if end of stream is encountered.
parameter: dest: array to hold values
parameter: off: offset for array
parameter: len: max number of bytes to read into array
return: bytes read into array or \-1 if end of stream is encountered.

