Class FastByteArrayOutputStream

  • All Implemented Interfaces:
    Closeable, Flushable, AutoCloseable

    public class FastByteArrayOutputStream
    extends OutputStream
    ByteArrayOutputStream implementation that doesn't synchronize methods and doesn't copy the data on toByteArray().
    • Field Detail

      • buf

        protected byte[] buf
      • size

        protected int size
    • Constructor Detail

      • FastByteArrayOutputStream

        public FastByteArrayOutputStream()
      • FastByteArrayOutputStream

        public FastByteArrayOutputStream​(int size)
    • Method Detail

      • getSize

        public int getSize()
      • getByteArray

        public byte[] getByteArray()
        Returns the byte array containing the written data. Note that this array will almost always be larger than the amount of data actually written.
      • write

        public final void write​(byte[] b)
        Overrides:
        write in class OutputStream
      • write

        public final void write​(byte[] b,
                                int off,
                                int len)
        Overrides:
        write in class OutputStream
      • write

        public final void write​(int b)
        Specified by:
        write in class OutputStream
      • reset

        public void reset()
      • getInputStream

        public InputStream getInputStream()
        Returns a ByteArrayInputStream for reading back the written data