Savarese.Org HomeORO HomeSavarese.Org/ORO Logo

com.oroinc.io
Class FromNetASCIIOutputStream

java.lang.Object
  |
  +--java.io.OutputStream
        |
        +--java.io.FilterOutputStream
              |
              +--com.oroinc.io.FromNetASCIIOutputStream

public final class FromNetASCIIOutputStream
extends java.io.FilterOutputStream

This class wraps an output stream, replacing all occurrences of <CR><LF> (carriage return followed by a linefeed), which is the NETASCII standard for representing a newline, with the local line separator representation. You would use this class to implement ASCII file transfers requiring conversion from NETASCII.

Because of the translation process, a call to flush() will not flush the last byte written if that byte was a carriage return. A call to close() , however, will flush the carriage return.

Author:
Daniel F. Savarese

Fields inherited from class java.io.FilterOutputStream
out
 
Constructor Summary
FromNetASCIIOutputStream(java.io.OutputStream output)
          Creates a FromNetASCIIOutputStream instance that wraps an existing OutputStream.
 
Method Summary
 void close()
          Closes the stream, writing all pending data.
 void write(byte[] buffer)
          Writes a byte array to the stream.
 void write(byte[] buffer, int offset, int length)
          Writes a number of bytes from a byte array to the stream starting from a given offset.
 void write(int ch)
          Writes a byte to the stream.
 
Methods inherited from class java.io.FilterOutputStream
flush
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FromNetASCIIOutputStream

public FromNetASCIIOutputStream(java.io.OutputStream output)
Creates a FromNetASCIIOutputStream instance that wraps an existing OutputStream.

Parameters:
output - The OutputStream to wrap.
Method Detail

write

public void write(int ch)
           throws java.io.IOException
Writes a byte to the stream. Note that a call to this method might not actually write a byte to the underlying stream until a subsequent character is written, from which it can be determined if a NETASCII line separator was encountered. This is transparent to the programmer and is only mentioned for completeness.

Overrides:
write in class java.io.FilterOutputStream
Parameters:
ch - The byte to write.
Throws:
java.io.IOException - If an error occurs while writing to the underlying stream.

write

public void write(byte[] buffer)
           throws java.io.IOException
Writes a byte array to the stream.

Overrides:
write in class java.io.FilterOutputStream
Parameters:
buffer - The byte array to write.
Throws:
java.io.IOException - If an error occurs while writing to the underlying stream.

write

public void write(byte[] buffer,
                  int offset,
                  int length)
           throws java.io.IOException
Writes a number of bytes from a byte array to the stream starting from a given offset.

Overrides:
write in class java.io.FilterOutputStream
Parameters:
buffer - The byte array to write.
offset - The offset into the array at which to start copying data.
length - The number of bytes to write.
Throws:
java.io.IOException - If an error occurs while writing to the underlying stream.

close

public void close()
           throws java.io.IOException
Closes the stream, writing all pending data.

Overrides:
close in class java.io.FilterOutputStream
Throws:
java.io.IOException - If an error occurs while closing the stream.

Savarese.Org HomeORO HomeSavarese.Org/ORO Logo

Copyright © 1997-2002 Daniel F. Savarese. All Rights Reserved.