如何在 Windows 7 中处理大型控制台输出?

How can I handle large console output in Windows 7?

我正在使用基于 Java 的应用程序。当它启动时,它会打开一个控制台并在那里写入它的输出。

然而,有时输出太大以至于不适合控制台window(控制台window最多10000行),输出大10倍以上).

我已经尝试下载其他控制台应用程序(如 con Emu),但最大行数(约 32760)也太小了。

我的 PC 上有 Ultra Edit,它可以捕获 DOS 命令输出,但在调试我的程序时,我无法从简单的文本编辑器对话框中启动调试会话。

现在我有几个解决方案:

谁能告诉我正确的方向?

谢谢

如果它是您所说的 Java 应用程序,您可以将启动包装在您自己的 class 中,将 System.outSystem.err 替换为基于 TeeOutputStreams 的东西将同时打印到控制台(你从 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 您仍然需要做...