Class FromNetASCIIOutputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable

    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.

    • Field Summary

      • Fields inherited from class java.io.FilterOutputStream

        out
    • Constructor Summary

      Constructors 
      Constructor Description
      FromNetASCIIOutputStream​(java.io.OutputStream output)
      Creates a FromNetASCIIOutputStream instance that wraps an existing OutputStream.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      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.io.OutputStream

        nullOutputStream
      • 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.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.FilterOutputStream
        Throws:
        java.io.IOException - If an error occurs while closing the stream.