我正在使用基于Java的应用程序。当它启动时,它会打开一个控制台并在那里写入它的输出。
但是,输出有时很大,不适合控制台窗口(控制台窗口最多有10000行),输出大10倍以上。
我已经尝试下载其他控制台应用程序(如con Emu),但最大行数(约32760)也太小了。
我的PC上有Ultra Edit,它可以捕获DOS命令输出,但是当我调试程序时,我无法从简单的文本编辑器对话框启动调试会话。
现在我有几个解决方案:
有人能让我走上正轨吗?
由于
答案 0 :(得分:0)
如果它是您所说的Java应用程序,您可以将启动包装在您自己的类中,将System.out
和System.err
替换为基于{{3}的内容这将打印到控制台(您从System.out的值之前保存)和您设置的日志文件。
像这样:
public class LogWrapper {
public static void main(String[] args) {
PrintStream out = System.out;
PrintStream err = System.err;
System.setOut(new TeePrintStream(out, new PrintStream("system.out.log")));
System.setErr(new TeePrintStream(err, new PrintStream("system.err.log")));
the.original.ClassYouWereCalling.main(args);
}
}
注意:TeePrintStream
您还必须做...