当前位置: 首页 > 面试题库 >

在没有Java Web Start的情况下如何通过管道将Java控制台输出传输到文件?

越涛
2023-03-14
问题内容

我想将Java控制台输出(由System.out.printlnIlk和Ilk
生成)通过管道传输到文件。我在这里找到了一个出色的解决方案来启用Java跟踪,但这对我不起作用(在Mac
OS X或Windows上的任何位置都没有显示日志文件)。据我所知,这是因为我使用的是没有Java Web
Start的普通Java应用程序。那么如何使用不使用Java Web
Start的Java代码来做到这一点呢?理想情况下,我想要一个不需要修改代码的解决方案


问题答案:

您不需要Java网络启动即可执行任何上述操作。只需将设置为System.out即可FileOutputStream

System.setOut(new PrintStream(new FileOutputStream(fileName)));

fileName您要传送到的文件的完整路径在哪里。

public static void main(String[] args) throws Exception {   //Read user input into the array
    System.setOut(new PrintStream(new FileOutputStream("home.txt")));
    System.out.println("hello");
}

将写入当前工作目录中hello\n命名的文件home.txt

如果您无法修改代码,请在Windows
7上使用命令重定向。

java YourMainClass > home.txt

如果需要运行jar,可以使用java应用程序启动器的-jar选项。

java -jar /your/path.jar > /output/file/path.txt


 类似资料:
  • 问题内容: 我在完全冻结JVM的应用程序中发现一个错误。产生的stacktrace将为开发人员提供有价值的信息,我想从Java控制台中检索它。JVM崩溃时,控制台被冻结,我无法再复制包含的文本。 是否可以将Java控制台直接通过管道传输到文件,或通过其他某种方式访问​​Java应用程序的控制台输出? 更新:我忘记提了,没有更改代码。我是手动测试仪。 更新2:这是在Windows XP下,它实际上是

  • 问题内容: Netbeans仔细地将Logger.getLogger(this.getClass()。getName())。log(Level。[…]语句撒到catch块中。现在,我想将它们全部指向一个文件(并指向控制台)。 每个日志教程(只有我这样)都告诉我如何获取特定的日志记录器以输出到文件中,但是我认为有比修复每个自动生成的日志记录语句更好的方法了?为某种类型的根记录程序设置处理程序? 问题

  • 问题内容: 我创建了一个复杂的管道。在每个阶段,我都叫工作。我想在Jenkins的某个阶段中查看每个作业的控制台输出。如何获得? 问题答案: 从构建步骤返回的对象可用于查询日志,如下所示: 从构建步骤返回的对象是RunWrapper类对象。getRawBuild()调用返回一个Run对象- 除了从此类的外观逐行读取日志之外,还有其他选择。为此,您需要禁用管道沙箱或获取这些方法的脚本批准: 如果要对

  • 我正在用Java编写一个服务器,它是多线程的。我有三个主要的活动线程,我从我的main方法开始构建: 例如,我的命令线程用于通过将输入“q”放入控制台窗口来停止服务器。命令的运行方法定义如下: *其中扫描定义为: 当我运行服务器时,我的所有线程都工作,除了命令线程,因为控制台不接受输入。 然后我意识到,如果我等待我的服务器线程(这是我最关心的线程)与我的主(静态方法)线程连接,我的命令线程就会起作

  • 问题内容: 我正在尝试在python中找到一种将脚本执行日志重定向到文件以及以pythonic方式的方法。有没有简单的方法可以做到这一点? 问题答案: 我想出了这个[unested] 在python中将期望有一个函数。您可以使用具有此功能的自定义对象。否则,您也可以让sys.stdout引用您的对象,在这种情况下,即使没有,它也会被准备。

  • 问题语句:我有一个在Xcode中运行的程序,它有一堆print()语句,可以很好地将输出打印到调试控制台。然而,我希望也能够将这些输出重定向到一个文件,这样我就可以让用户将它们发送给我,作为调试的一种方式。 SO上找到的解决方案使我可以将输出重定向到文件,但调试控制台输出将丢失。 问:我想要我的蛋糕和吃它。我希望能够将print()语句重定向到调试控制台和文件。 所以我有引用:https://st