devxlogo

Write to Multiple Targets Simultaneously

Write to Multiple Targets Simultaneously

This is helpful, for instance, if you’re error logging to the file and body of an e-mail. Create a new subclass of OutputStream called TeeOutputStream like this:

package be.marble.io;import java.io.*;public class TeeOutputStream extends OutputStream {  private OutputStream out1, out2;  public TeeOutputStream(OutputStream out1, OutputStream out2) {    this.out1 = out1;    this.out2 = out2;  }  public void write(byte b) throws IOException {    out1.write(b);    out2.write(b);  }  public void flush() throws IOException {    out1.flush();    out2.flush();  }  public void close() throws IOException {    out1.close();    out2.close();  }}

devx-admin

Share the Post: