Java : FilterOutputStream con ejemplos

FilterOutputStream (Java SE 21 & JDK 21) en Java con ejemplos.
Encontrará ejemplos de código en la mayoría de los métodos de FilterOutputStream.

Nota :


Summary

Esta clase es la superclase de todas las clases que filtran flujos de salida. Estos flujos se encuentran sobre un flujo de salida ya existente (el flujo de salida subyacente) que utiliza como su receptor básico de datos, pero posiblemente transformando los datos en el camino o brindando funcionalidad adicional. (Traducción automática)

Class diagram

class MyOutputStream extends FilterOutputStream {
    MyOutputStream(OutputStream out) {
        super(out);
    }
}

final var out = new ByteArrayOutputStream();

try (final var os = new MyOutputStream(out)) {
    os.write(10);
    os.write(20);
    os.write(30);
}

System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30]

Fields

protected OutputStream out

El flujo de salida subyacente que se va a filtrar. (Traducción automática)

class MyOutputStream extends FilterOutputStream {
    MyOutputStream(OutputStream out) {
        super(out);
    }

    OutputStream getOut() {
        return out;
    }
}

final var out = new ByteArrayOutputStream();

try (final var os = new MyOutputStream(out)) {
    System.out.println(os.getOut() == out); // true
}

Constructors

FilterOutputStream (OutputStream out)

Crea un filtro de flujo de salida construido sobre el flujo de salida subyacente especificado. (Traducción automática)

class MyOutputStream extends FilterOutputStream {
    MyOutputStream(OutputStream out) {
        super(out);
    }
}

final var out = new ByteArrayOutputStream();

try (final var os = new MyOutputStream(out)) {
    os.write(10);
    os.write(20);
    os.write(30);
}

System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30]

Methods

void close ()

Cierra este flujo de salida y libera todos los recursos del sistema asociados con el flujo. (Traducción automática)

final var out = new ByteArrayOutputStream();

try (final FilterOutputStream os = new BufferedOutputStream(out)) {
    os.write(10);
    os.write(20);
    os.write(30);
}

System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30]
// An example without a try-with-resources statement.
final var out = new ByteArrayOutputStream();
final FilterOutputStream os = new BufferedOutputStream(out);
try {
    os.write(10);
    os.write(20);
    os.write(30);
} finally {
    os.close();
}

System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30]

void flush ()

Limpia este flujo de salida y fuerza a que todos los bytes de salida almacenados en búfer se escriban en el flujo. (Traducción automática)

final var out = new ByteArrayOutputStream();

try (final FilterOutputStream os = new BufferedOutputStream(out)) {

    os.write(10);
    System.out.println(Arrays.toString(out.toByteArray())); // []

    os.flush();
    System.out.println(Arrays.toString(out.toByteArray())); // [10]

    os.write(20);
    System.out.println(Arrays.toString(out.toByteArray())); // [10]

    os.flush();
    System.out.println(Arrays.toString(out.toByteArray())); // [10, 20]

    os.write(30);
    System.out.println(Arrays.toString(out.toByteArray())); // [10, 20]
}

System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30]

void write (byte[] b)

Escribe bytes de longitud b en este flujo de salida. (Traducción automática)

final var out = new ByteArrayOutputStream();

try (final FilterOutputStream os = new BufferedOutputStream(out)) {

    final byte[] b1 = {10, 20};

    os.write(b1);
    os.flush();
    System.out.println(Arrays.toString(out.toByteArray())); // [10, 20]

    final byte[] b2 = {30, 40, 50};

    os.write(b2);
    os.flush();
    System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30, 40, 50]
}

void write (byte[] b, int off, int len)

Escribe len bytes de la matriz de bytes especificada comenzando en el desplazamiento off en esta secuencia de salida. (Traducción automática)

final var out = new ByteArrayOutputStream();

try (final FilterOutputStream os = new BufferedOutputStream(out)) {

    final byte[] b = {10, 20, 30, 40, 50};

    os.write(b, 0, 2);
    os.flush();
    System.out.println(Arrays.toString(out.toByteArray())); // [10, 20]

    os.write(b, 2, 3);
    os.flush();
    System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30, 40, 50]
}

void write (int b)

Escribe el byte especificado en este flujo de salida. (Traducción automática)

class MyOutputStream extends FilterOutputStream {
    MyOutputStream(OutputStream out) {
        super(out);
    }
}

final var out = new ByteArrayOutputStream();

try (final var os = new MyOutputStream(out)) {
    os.write(10);
    os.write(20);
    os.write(30);
}

System.out.println(Arrays.toString(out.toByteArray())); // [10, 20, 30]

Methods declared in OutputStream

nullOutputStream

Consulte el siguiente enlace.


Related posts

To top of page