我正在处理商业Java API,它只公开以下日志记录配置:
cplex.setOut(OutputStream arg0);
我想记录两个流:文件和控制台。 有可能吗?
答案 0 :(得分:11)
我相信是。
例如
FileOutputStream fos = ...;
TeeOutputStream brancher = TeeOutputStream(fos, System.out);
cplex.setOut(brancher);
答案 1 :(得分:3)
编写自己的OutputStream实现,该实现将对write
方法的调用委托给两个包装的OutputStream,一个用于控制台,一个用于文件。
答案 2 :(得分:2)
答案 3 :(得分:0)
易:
cplex.setOut(new OutputStream() {
public void write(int b) throws IOException {
outputStream1.write(b);
outputStream2.write(b);
}
});