编程语言
首页 > 编程语言> > 为什么我不能在Java运行时中使用日志文件

为什么我不能在Java运行时中使用日志文件

作者:互联网

我有(用Java)

rt.exec("qq.exe -i ..(some other parameters) > qq.log");//*1

当我运行qq.exe -i ..(其他一些参数)时终端中的qq.log可以正常工作并正确保存qq.log文件.

但是,使用rt.exec(* 1)不起作用. “> qq.log”部分导致问题.当我删除该部分时,rt.exec(* 1)可以工作,但这次我无法拥有qq.log文件.

是什么导致此问题,并且有解决方案吗?

解决方法:

rt.exec()无法执行sh / bat代码.它只是在调用另一个程序.当您尝试使用>重定向qq.exe的输出流时.符号,专门针对shell,java不了解该怎么做.

一种替代方法是,当您使用exec方法执行某些程序时,获取rt.exec()返回的Process.
Process可以为您提供到应用程序的OutputStream,来自应用程序的InputStream甚至是已启动应用程序的ErrorStream.

使用InputStream,您可以以编程方式读取qq.exe的结果,而您要做的就是将其写入文件中.

标签:runtime-exec,exec,runtime,java
来源: https://codeday.me/bug/20191209/2097080.html