comHttp
Class Base64Encoder

java.lang.Object
  extended byjava.io.OutputStream
      extended byjava.io.FilterOutputStream
          extended bycomHttp.Base64Encoder

public class Base64Encoder
extends java.io.FilterOutputStream

A class to encode Base64 streams and strings. See RFC 1521 section 5.2 for details of the Base64 algorithm.

This class can be used for encoding strings:

 String unencoded = "webmaster:try2gueSS";
 String encoded = Base64Encoder.encode(unencoded);
 
or for encoding streams:
 OutputStream out = new Base64Encoder(System.out);
 


Field Summary
 
Fields inherited from class java.io.FilterOutputStream
out
 
Constructor Summary
Base64Encoder(java.io.OutputStream out)
          Constructs a new Base64 encoder that writes output to the given OutputStream.
 
Method Summary
 void close()
          Closes the stream, this MUST be called to ensure proper padding is written to the end of the output stream.
static java.lang.String encode(byte[] bytes)
          Returns the encoded form of the given unencoded string.
static java.lang.String encode(java.lang.String unencoded)
          Returns the encoded form of the given unencoded string.
static void main(java.lang.String[] args)
           
 void write(byte[] buf, int off, int len)
          Writes the given byte array to the output stream in an encoded form.
 void write(int b)
          Writes the given byte to the output stream in an encoded form.
 
Methods inherited from class java.io.FilterOutputStream
flush, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Base64Encoder

public Base64Encoder(java.io.OutputStream out)
Constructs a new Base64 encoder that writes output to the given OutputStream.

Parameters:
out - the output stream
Method Detail

write

public void write(int b)
           throws java.io.IOException
Writes the given byte to the output stream in an encoded form.

Throws:
java.io.IOException - if an I/O error occurs

write

public void write(byte[] buf,
                  int off,
                  int len)
           throws java.io.IOException
Writes the given byte array to the output stream in an encoded form.

Parameters:
off - the start offset of the data
len - the length of the data
Throws:
java.io.IOException - if an I/O error occurs

close

public void close()
           throws java.io.IOException
Closes the stream, this MUST be called to ensure proper padding is written to the end of the output stream.

Throws:
java.io.IOException - if an I/O error occurs

encode

public static java.lang.String encode(java.lang.String unencoded)
Returns the encoded form of the given unencoded string. The encoder uses the ISO-8859-1 (Latin-1) encoding to convert the string to bytes. For greater control over the encoding, encode the string to bytes yourself and use encode(byte[]).

Parameters:
unencoded - the string to encode
Returns:
the encoded form of the unencoded string

encode

public static java.lang.String encode(byte[] bytes)
Returns the encoded form of the given unencoded string.

Returns:
the encoded form of the unencoded string

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
Throws:
java.lang.Exception