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

2024-06-07 15:04:46 发布

您现在位置:Python中文网/ 问答频道 /正文

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

但是,输出有时太大,不适合consolee窗口(console窗口最多有10000行),输出是consolee窗口的10倍以上。你知道吗

我已经尝试过下载其他控制台应用程序(比如conemu),但是最大行数(大约32760行)太少了。你知道吗

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

现在留给我几个解决方案:

  • 将已运行进程的控制台窗口的输出重定向到系统上的本地文件。你知道吗
  • 但是要找到另一个不受预定义值限制的控制台仿真工具。你知道吗
  • 我自己开发sych控制台仿真工具(最好是Python、Java或visualbasic),但是为了做到这一点,我需要从windows7api知道如何开始这样做。你知道吗

有人能把我带到正确的轨道上吗?你知道吗

谢谢


Tags: 工具命令应用程序java解决方案editconsole对话框
1条回答
网友
1楼 · 发布于 2024-06-07 15:04:46

如果您所说的是Java应用程序,那么您可以将启动包在自己的类中,用基于^{}s的内容替换System.outSystem.err,这些内容将同时打印到控制台(在值之前保存)系统输出)以及你设置的日志文件。你知道吗

像这样:

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你还得做。。。

相关问题 更多 >

    热门问题