我有一个 OutputStream,我想(在概念层面上)将它广播到多个文件。例如,如果流中出现一个字节,我希望将其写入文件 A、B 和 C。
如何仅使用一个流来完成此操作?最好使用纯 Java 解决方案。
为此,您可以使用 Apache Commons IO TeeOutputStream。该 OutputStream 将写入它的所有字节代理到两个底层 OutputStreams。TeeOutputStreams当您想一次写入两个以上的 OutputStreams 时,您可以在链中使用多个。
OutputStream out = new TeeOutputStream(new FileOutputStream(new File("A")), new TeeOutputStream(new FileOutputStream(new File("B")), new FileOutputStream(new File("C")))))
Run Code Online (Sandbox Code Playgroud)