Class FromNetASCIIOutputStream

java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
org.apache.commons.net.io.FromNetASCIIOutputStream
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable

public final class FromNetASCIIOutputStream extends 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.

  • Constructor Details

    • FromNetASCIIOutputStream

      Creates a FromNetASCIIOutputStream instance that wraps an existing OutputStream.
      Parameters:
      output - The OutputStream to wrap.
  • Method Details

    • close

      public void close() throws IOException
      Closes the stream, writing all pending data.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Overrides:
      close in class FilterOutputStream
      Throws:
      IOException - If an error occurs while closing the stream.
    • write

      public void write(byte[] buffer) throws IOException
      Writes a byte array to the stream.
      Overrides:
      write in class FilterOutputStream
      Parameters:
      buffer - The byte array to write.
      Throws:
      IOException - If an error occurs while writing to the underlying stream.
    • write

      public void write(byte[] buffer, int offset, int length) throws IOException
      Writes a number of bytes from a byte array to the stream starting from a given offset.
      Overrides:
      write in class 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:
      IOException - If an error occurs while writing to the underlying stream.
    • write

      public void write(int ch) throws 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 FilterOutputStream
      Parameters:
      ch - The byte to write.
      Throws:
      IOException - If an error occurs while writing to the underlying stream.